如何解析ASP.NET1.1、ASP.NET2.0 ASP.NET3.5中验证控件等问题

这篇文章将为大家详细讲解有关如何解析ASP.NET1.1、ASP.NET2.0、ASP.NET3.5中验证控件等问题,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

在asp.net页面中,当有验证控件,而且想在验证控件验证通过之后,弹出一个确认对话框,提示是否继续。

当在button按钮上添加客户端的onclick="return confirm('Are you sure to continue?')"时,验证控件的验证就会失效。因为验证控件也是添加客户端的onclick事件。

在asp.net2.0, asp.net3.5中可以使用如下方法解决。(asp.net1.1的稍后再说)

首先将button的CausesValidation=癴alse”, 即

< asp:Button ID="Button1" runat="server" Text="Button"  CausesValidation="False"  OnClick="clickme" />

其实,CausesValidation="False/True"都不会有任何影响。

接着,在后台代码的Page_Load事件中,注册客户端的onclick事件。

方法1:

protected void Page_Load(object sender, EventArgs e)      {          Button1.OnClientClick = ClientScript.GetPostBackEventReference(              new PostBackOptions(Button1, "", "", false, true, false, false, true, ""))               + ";return (Page_IsValid && confirm('Are you sure to continue?'));";       }

这里要特别注意的一个地方是,不能把它放在if(!isPostBack) {...}的里面,否则,* * *次正常,下一次开始就会报

微软JScript运行时错误:& # 39;WebForm_PostBackOptions& # 39;null

如何解析ASP.NET1.1、ASP.NET2.0 ASP.NET3.5中验证控件等问题