<asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager>
<form id="form1" runat="server"> <asp:ScriptManager ID="ScriptManager2" runat="server" AllowCustomErrorsRedirect="true" > </asp:ScriptManager> <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /> </ContentTemplate> </asp:UpdatePanel> </form>
protected void Button1_Click(object sender, EventArgs e) { throw new Exception(); }
<system.web> <compilation debug="false" targetFramework="4.0"/> <customErrors mode="On" defaultRedirect="Error.aspx"></customErrors> </system.web>
<asp:ScriptManager ID="ScriptManager1" runat="server" AllowCustomErrorsRedirect="false" OnAsyncPostBackError="ScriptManager1_AsyncPostBackError"> </asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /> </ContentTemplate> </asp:UpdatePanel> <script type="text/javascript" language="javascript"> Sys.WebForms.PageRequestManager.getInstance().add_endRequest(function(sender, e) { e.set_errorHandled(true); $get("error").innerHTML = e.get_error().message; }); </script>
protected void Button1_Click(object sender, EventArgs e) { throw new Exception("Error!"); } protected void ScriptManager1_AsyncPostBackError(object sender, AsyncPostBackErrorEventArgs e) { ScriptManager.GetCurrent(this).AsyncPostBackErrorMessage = e.Exception.Message; }
protected void Button1_Click(object sender, EventArgs e) { ScriptManager.RegisterStartupScript(this.UpdatePanel1, this.GetType(), "UpdatePanel1", "alert(1)", true); ScriptManager.RegisterClientScriptBlock(this.UpdatePanel1, this.GetType(), "UpdatePanel1", "alert(2)", true); }
ScriptManager是Asp.Net的服务器控件。管理客户端组件、局部页刷新等功能,在使用其他Ajax Extension控件前首先要添加ScriptManger控件