updatepanel 里有一按钮,按钮执行出现异常后,Global.asax.cs 里获取异常的 Server.GetLastError() 为空。如果按钮不在updatepanel里错误就不会为空。
错误信息如下:
Sys.WebForms.PageRequestManagerParserErrorException: 无法分析从服务器收到的消息。之所以出现此错误,常见的原因是: 在通过调用 Response.Write() 修改响应时,将启用响应筛选器、HttpModule 或服务器跟踪。
详细信息: 分析附近的“<!DOCTYPE html P”时出错。
谢谢! 已经试过在web.config里加customErrors 和<httpModules>
      <add name="ScriptModule" 这两个都试过了

解决方案 »

  1.   

    加这两个节点:<httpHandlers>
    <remove verb="*" path="*.asmx"/>
    <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
    </httpHandlers>
    <httpModules>
    <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    </httpModules>
      

  2.   

     Response.Write() 换一种。
      

  3.   

    另外在使用ajax框架后,注册脚本要使用scriptManager这个类。
      

  4.   


    //如:        ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "s", "<script>alert('您错了')</script>",false);
      

  5.   

    用了updatepannel就用这种 ScriptManager.RegisterClientScriptBlock处理别用response.write处理
      

  6.   

    Response.Write()和UpdatePanel不能共用
    <Triggers>
                <asp:PostBackTrigger ControlID="btn" />
     </Triggers>
    ScriptManager.RegisterStartupScript(this, this.GetType(), "", "test()", true);