解决AJAX中使用UpdatePanel后再用无法弹出对话框问题

只需要采用System.Web.UI.ScriptManager.RegisterStartupScript来替代Page.ClientScript.RegisterStartupScript即可


函数原型:

System.Web.UI.ScriptManager.RegisterStartupScriptContrl control, Type type,string key,string script, bool addScriptTags;

 

参数:

control:要要注册此段javascript语句的控件ID,如下面示例的按钮ID btnUnReport

type:般直接用this.GetType()即可

key:为要执行的javascirpt语句起的名字,可以随便起,类似控件的name属性

script:javascript语句

addScriptTags:true时,前边的script参数可以不用再写javascript标签;为false,则需自己为script参数添加<script language="javascript"></script>标签。


注:要多传一个Control参数,如果这个controlUpdatePanel里,则运行此脚本,如果这个control不在UpdatePanel则不允许这段脚本。


参考:

ScriptManager.RegisterStartupScript(btn1, this.GetType(), "unReport", "alert('有提示了吧.');window.close();", true);

 

原文地址:https://www.cnblogs.com/symbol441/p/983845.html