ASP.Net数据验证中的验证组

数据验证是为了防止用户录入错误数据或者 漏掉必须填写的数据而使得服务器出现不必要的错误,ASP.NET有验证控件方便我们进行数据验证,但是有时会出现这样或者那样的问题,我今天就遇到了一个,把验证控件说一下吧
< asp:TextBox  ID ="TextBox1"  runat ="server" ></ asp:TextBox >
< asp:RequiredFieldValidator  ID ="RequiredFieldValidator1"  ControlToValidate ="TextBox1"  runat ="server"  ErrorMessage ="RequiredFieldValidator" ></ asp:RequiredFieldValidator >
 
< asp:Button  ID ="Button1"  runat ="server"  Text ="Button1"   />
上面的代码实现了最基本的验证,用户如果不输入信息而直接点击Button1那么ErrorMessage就会显示出来
< asp:TextBox  ID ="TextBox1"  runat ="server" ></ asp:TextBox >
< asp:RequiredFieldValidator  ID ="RequiredFieldValidator1"  ControlToValidate ="TextBox1"  runat ="server"  ErrorMessage ="RequiredFieldValidator" ></ asp:RequiredFieldValidator >
< asp:Button  ID ="Button1"  runat ="server"  Text ="Button1"   />
< asp:Button  ID ="Button2"  runat ="server"  Text ="Button2"   />
在上面的代码中用户如果不输入信息而点击Button1或者Button2那么ErrorMessage都会显示出来.如果我不想让Button2引发验证怎么办呢? 好办,给Button2添加一个属性 CausesValidation="false" 如下
< asp:TextBox  ID ="TextBox1"  runat ="server" ></ asp:TextBox >
< asp:RequiredFieldValidator  ID ="RequiredFieldValidator1"  ControlToValidate ="TextBox1"  runat ="server"  ErrorMessage ="RequiredFieldValidator" ></ asp:RequiredFieldValidator >
< asp:Button  ID ="Button1"  runat ="server"  Text ="Button1"   />
< asp:Button  ID ="Button2"  runat ="server"  Text ="Button2"   CausesValidation ="false"    />

这样用户如果在不输入信息的情况下直接点击Button2  ErrorMessage就不会出现
但是有时候需要我们在同一页面验证不同的信息,你肯定不能将按钮的 CausesValidation="false" 加上,我们需要加的是ValidationGroup属性
< asp:TextBox  ID ="TextBox1"  runat ="server" ></ asp:TextBox >
< asp:RequiredFieldValidator  ID ="RequiredFieldValidator1"  ControlToValidate ="TextBox1"  ValidationGroup ="basicInfo"  runat ="server"  ErrorMessage ="error form textbox1" ></ asp:RequiredFieldValidator >
< asp:Button  ID ="Button1"  ValidationGroup ="basicInfo"  runat ="server"  Text ="Button1"   />
< asp:TextBox  ID ="TextBox2"  runat ="server" ></ asp:TextBox >
< asp:RequiredFieldValidator  ID ="RequiredFieldValidator2"  ControlToValidate ="TextBox2"  ValidationGroup ="moreInof"  runat ="server"  ErrorMessage ="error form textbox2"   ></ asp:RequiredFieldValidator >
< asp:Button  ID ="Button2"  ValidationGroup ="moreInof"  runat ="server"  Text ="Button2"   />
这样就实现了你点击Button只引发对特定button的验证而不会影响其他的button

总结:使用验证组可以将页面上的验证控件归为一组。可以对每个验证组执行验证,该验证与同一页的其他验证组无关。
将要分组的所有控件的 ValidationGroup 属性设置为同一个名称(字符串)即可创建验证组。可以为验证组分配任何名称,但必须对该组的所有成员使用相同的名称。
http://www.cnblogs.com/interboy/archive/2006/11/21/566998.html
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值