ASP.NET:如何在页面响应后显示jQuery对话框。重定向?

ASP.NET:如何在页面响应后显示jQuery对话框。重定向?,jquery,asp.net,redirect,dialog,modal-dialog,Jquery,Asp.net,Redirect,Dialog,Modal Dialog,页面重定向(完全回发)后是否可以显示jQuery模式对话框 我有一页: MyEditForm.aspx/EditId=0 在该页面中有一个表单和一个保存按钮,当我单击保存按钮时,我想显示一个jQuery模式对话框,为用户提供一些选项,但我想在将用户重定向到此页面后显示该对话框: MyEditForm.aspx/EditId=500 它是同一页,但带有(EditId=500) 这是我的密码: StringBuilder sb = new StringBuilder(); sb.Append("jQ

页面重定向(完全回发)后是否可以显示jQuery模式对话框

我有一页:

MyEditForm.aspx/EditId=0

在该页面中有一个表单和一个保存按钮,当我单击保存按钮时,我想显示一个jQuery模式对话框,为用户提供一些选项,但我想在将用户重定向到此页面后显示该对话框:

MyEditForm.aspx/EditId=500

它是同一页,但带有(EditId=500)

这是我的密码:

StringBuilder sb = new StringBuilder();
sb.Append("jQuery(document).ready(function () {");
sb.Append("  jQuery(function() { ");
sb.Append("    jQuery('#MyDivID').dialog({");
sb.Append("      width: 350, autoOpen: true, modal: true);
sb.Append("    });");
sb.Append("  });");
sb.Append("});");

Page.ClientScript.RegisterStartupScript(this.GetType(), "MyDialogScript", sb.ToString(), true);

Response.Redirect("~/MyEditForm.aspx/EditId=" + NewRecordId, false);

如果我不使用Response.Redirect,则对话框可以正常工作,但我无法将用户重定向到具有新ID的页面,我如何解决此问题?

将以下代码移动到页面加载方法中,并进行如下修改

protected void Page_Load(object sender, EventArgs e){
    int editId=0;
    if(Request["EditId"]!=null and Int32.TryParse(Request["EditId"], out editId)){
       if(editId>0){
          StringBuilder sb = new StringBuilder();
          sb.Append("jQuery(document).ready(function () {");
          sb.Append("  jQuery(function() { ");
          sb.Append("    jQuery('#MyDivID').dialog({");
          sb.Append("      width: 350, autoOpen: true, modal: true);
          sb.Append("    });");
          sb.Append("  });");
          sb.Append("});");
          Page.ClientScript.RegisterStartupScript(this.GetType(), "MyDialogScript", sb.ToString(), true);
       }
    }
} 

并在保存按钮点击处理程序中使用
Respon.Redirect

它是否必须是一个模式弹出窗口,或者您是否考虑过只在满足条件时显示一个面板(如
EditId
中的非零值)?@TiesonT。谢谢你的建议,是的,它必须是一个模式弹出窗口,添加非零值这样的条件将不起作用,因为我只希望它在单击“保存”按钮后显示一次。感谢您的建议,但我忘了提到,我只希望在单击“保存”按钮后显示一次对话框,因为当我以编辑模式进入该页面时(ie EditId>0)我根本不想显示该对话框。在这种情况下,我建议您在url中添加另一个查询字符串,以指定重定向已从“保存”按钮发生。即Response.redirect(“~/MyEditForm.aspx?Saved=1&EditId=“+NewRecordId,false”);并检查是否存在“Saved”查询字符串