日期:2014-05-20  浏览次数:20447 次

ASP.NET AJAX中UpdatePanel中如何弹出提示对话框?
想在使用ajax的页面中执行完某任务后弹出一个提示对话框,

我用Response.Write( " <script> alert( '提示:文件已经存在,请重命名后上传! ') </script> ");
以及网上找的this.ClientScript.RegisterClientScriptBlock(this.GetType(),   "a ",   " <script> alert( 'ok! '); </script> ",   true);
                        Page.ClientScript.RegisterClientScriptBlock(this.GetType(),   " ",   " <script> alert( '1 '); </script> ",   true);  

均没有效果,希望大家帮忙。


------解决方案--------------------
Response.Write( " <script> alert( '提示:文件已经存在,请重命名后上传! ') </script> ");
Response.End();
这样应该有效果
------解决方案--------------------
Response.Write( " <script defer> alert( '提示:文件已经存在,请重命名后上传! ') </script> ");
------解决方案--------------------
asp.net ajax是个独立的软件,并没有作为asp.net内置的功能升级来设计,至少质量上看不到这个。它使用新的ScriptManager 类来管理,而不是兼容原来的 ClientScriptManager 类。

所以你必须改造你的源代码,使用 ScriptManager 而不是原来的。
------解决方案--------------------
应该这么写
ScriptManager.RegisterStartupScript(UpdatePanel1,
UpdatePanel1.GetType(), " ", " alert(内容) ", true);
------解决方案--------------------
ScriptManager.RegisterStartupScript(UpdatePanel1, this.GetType(), "Button6_Click", "alert('请输入aaa!')", true);
------解决方案--------------------
使用ScriptManager对象。ScriptManager.RegisterClientScriptBlock(this,this.GetType(),"al","jsMethod",true)
------解决方案--------------------
C# code

 //Ajax框架中新调用方式
   ScriptManager.RegisterStartupScript(this.UpdatePanel1, this.GetType(), "UpdateSucceed", "alert('Update time succeed!')", true);

   //默认调用方式(在异步调用XmlHttp方式中无效) 
   //Page.ClientScript.RegisterStartupScript(this.GetType(), "UpdateSucceed", "<script>alert('Update time succeed!')</script>");