在AJAX支持的网站中使用想使用Response.Wrie(“”);或Page. RegisterStartupScript ();弹出一些提示对话框,没有效果。有如下两种解决方法:
(1)System.Web.UI.ScriptManager.RegisterStartupScript来替代Page.ClientScript.RegisterStartupScript
==>函数原型:
System.Web.UI.ScriptManager.RegisterStartupScript(Contrl 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参数添加标签。
注:要多传一个Control参数,如果这个control在UpdatePanel里,则运行脚步,如果这个control不在UpdatePanel则不允许这段脚步。
==>Eg.
System.Web.UI.ScriptManager.RegisterStartupScript(btnUnReport,this.GetType(),"unReport","alert('撤销上报操作失败,请勾选要上交的课题!');window.close();",true);
示例: