ASP.NET 2.0解决Button与验证控件冲突:ValidationGroup

开发 后端
本文解决了一个asp.net页面多个Button按钮事件的相关冲突问题。页面里多个按钮时,默认情况是Button与验证控件有冲突。ASP.NET 2.0中新增的ValidationGroup属性可以解决这个问题。

问题描述:在一个页面里创建多个按钮,其中默认情况下Button与验证控件冲突:当其中的一个按钮被点击后想要特定的validator被激发而不是页面中的所有validator(如验证用户名是否可用)。而其他按钮则不需要validator。此时会都会启用数据验证控件。

说明:在asp.net 1.1中除了hack code没有更好的办法解决Button与验证控件冲突的问题。asp.net 2.0中给所有的验证控件和按钮(button、linkbutton等等)增加了ValidatorGroup属性,就可以轻松地解决这个问题。如果在页面中有一个TextBox并且紧挨着他有一个RequiredFieldValidator 和Button控件,可以将RequiredFieldValidator和Button的ValidationGroup属性设置成一样的值从而使得点 击button时只触发这个RequiredFieldValidator的validor,任何没有定义在ValidationGroup内的其他的 validator都会被忽略。

例子:

文本框和数据验证控件:

  1. < asp:TextBox ID="TxtOldPs" runat="server" Width="150px">< /asp:TextBox>  
  2. < asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TxtOldPs" 
  3. Display="None" ErrorMessage="< b>友情提醒< /b>< br />请输入原始密码!!" ValidationGroup="ValidataGroup1">< /asp:RequiredFieldValidator> 

按钮事件:

  1. < asp:Button ID="ButtonOK" runat="server" Text="修改" OnClick="Edit_Click" ValidationGroup="ValidataGroup1" /> 

另一个按钮 则不需要设置ValidationGroup

  1. < asp:Button ID="ButtonOK" runat="server" Text="退出" OnClick="Exit_Click" />  

这样就通过ValidationGroup解决了Button与验证控件冲突的问题。

【编辑推荐】

  1. ASP.NET中的session存储模式运用
  2. ASP.NET中的文件上传下载方法集合
  3. ASP.NET中的cookie读写方法介绍
  4. ASP.NET中的javascript操作
  5. ASP.NET2.0中的单点登录简介及实现
责任编辑:book05 来源: hi.baidu
相关推荐

2009-07-27 17:25:53

ASP.NET验证控件

2009-08-07 14:40:36

RegularExprASP.NET验证控件

2009-07-21 15:27:12

ASP.NET 2.0

2009-07-24 17:15:52

SiteMapData

2009-08-04 15:20:59

ASP.NET数据验证数据验证控件

2009-08-05 17:43:48

ASP.NET 2.0

2009-08-05 18:14:52

ASP.NET 2.0

2009-07-21 15:50:47

ASP.NET控件JavaScript

2009-08-04 13:39:43

ASP.NET 2.0

2009-07-20 18:02:48

GridView控件ASP.NET 2.0

2009-07-23 14:43:24

数据源控件ASP.NET 2.0

2009-07-29 15:17:42

验证控件ASP.NET1.1ASP.NET2.0

2009-08-07 15:40:10

CompositeCo复合控件

2009-08-04 17:41:10

ASP.NET数据验证

2009-07-29 09:59:10

ASP.NET For

2009-07-27 08:51:24

ObjectDataS

2009-07-22 17:23:03

XmlDataSourASP.NET 2.0

2009-07-30 15:17:16

ASP.NET 2.0

2009-07-27 16:19:59

ASP.NET报表控件

2009-07-27 13:52:36

Panel控件ASP.NET
点赞
收藏

51CTO技术栈公众号