ASP.NET中使用UpdatePanel时用Response输出出现错误的解决方法
asp.net中执行到Response.write("xx");之类语句或Microsoft JScript 运行时错误: Sys.WebForms.PageRequestManagerParserErrorException: 无法分析从服务器收到的消息。之所以出现此错误,常见的原因是: 在通过调用 Response.Write() 修改响应时,将启用响应筛选器、HttpModule 或服务器跟踪。
在放置了UpdatePanel时,先在</UpdatePanel>前加入
<Triggers><asp:AsyncPostBackTrigger ControlID="Timer1"/></Triggers>试试,如果是设置了PostBackTrigger 也无法Response.Write();正常情况下,微软推荐我们是这么用的:
string scripts = "<script>alert('弹出提示框!');</script>";
ClientScriptManager csm = Page.ClientScript;
csm.RegisterClientScriptBlock(this.GetType(), "sss", scripts, false);
//csm.RegisterStartupScript(this.GetType(),"sss",scripts,false);
如果还不行你就用专门针对UpdatePanel控件的:
ScriptManager.RegisterStartupScript(this.UpdatePanel1, this.GetType(), "updateScript", "alert('未登录!');", true);
你只需将alert('未登录!');改成你要输出的脚本即可!
参考:http://wangyali90516.blog.163.com/blog/static/117205101201083025730557/
作 者:大杯美式不加糖不加奶
出 处:http://www.cnblogs.com/pomelos7ca/
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。
若您觉得这篇文章还不错请点击推荐按钮,有了您的支持才能激发作者更大的写作热情,非常感谢。