• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

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

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
数据验证是为了防止用户录入错误数据或者漏掉必须填写的数据而使得服务器出现不必要的错误,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 属性设置为同一个名称(字符串)即可创建验证组。可以为验证组分配任何名称,但必须对该组的所有成员使用相同的名称。

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
【ASP.NET Web API教程】6.2 ASP.NET Web API中的JSON和XML序列化发布时间:2022-07-10
下一篇:
Asp.NetMVC表单验证发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap