ASP.Net/Validation by Control/ValidationGroup
Use validation groups in ASP.NET 2.0 and beyond
<source lang="csharp">
<%@ Page Language="C#" AutoEventWireup="true"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<title>Validation groups</title>
</head> <script language="javascript"> function CheckMembership(source, arguments) {
arguments.IsValid = false; var buf = arguments.Value; if (buf == "Normal" || buf== "Silver" || buf == "Gold" || buf == "Platinum") arguments.IsValid = true;
} </script>
<body>
<form id="form1" runat="server">
Name | * | <asp:textbox runat="server" id="fname" />
<asp:RequiredFieldValidator runat="server" id="fnameValidator" ValidationGroup="NameGroup" ControlToValidate="fname" Text="!!!"ErrorMessage="Name is mandatory" /> |
Last Name | * | <asp:textbox runat="server" id="lname" />
<asp:RequiredFieldValidator runat="server" id="lnameValidator" ValidationGroup="NameGroup" ControlToValidate="lname" Text="!!!"ErrorMessage="Last name is mandatory" /> |
Age | <asp:textbox runat="server" id="age" text="15" />
<asp:CompareValidator runat="server" id="ageValidator" ValidationGroup="PersonalDataGroup" ControlToValidate="age" Operator="GreaterThanEqual" ValueToCompare="18" Type="integer"ErrorMessage="Age must be at least 18." /> | |
<asp:textbox runat="server" id="email" />
<asp:RegularExpressionValidator runat="server" id="emailValidator" ValidationGroup="PersonalDataGroup" ControlToValidate="email" ValidationExpression="[a-zA-Z_0-9.-]+\@[a-zA-Z_0-9.-]+\.\w+"ErrorMessage="Must be an email address." /> | ||
Hire Date | <asp:textbox runat="server" id="hired" />
<asp:CompareValidator runat="server" id="hiredValidator" ValidationGroup="PersonalDataGroup" ControlToValidate="hired" Display="Static" Operator="DataTypeCheck" Type="date" ErrorMessage="Must enter a date." /> <asp:RangeValidator runat="server" id="hiredDateValidator" ValidationGroup="PersonalDataGroup" ControlToValidate="hired" Display="Dynamic" MinimumValue="2008-1-1" MaximumValue="2008-12-31" Type="Date"ErrorMessage="Date after 1-1-99." /> | |
Membership Level | <asp:textbox runat="server" id="membership" />
<asp:CustomValidator runat="server" id="membershipValidator" ValidationGroup="PersonalDataGroup" ControlToValidate="membership" ClientValidationFunction="CheckMembership"ErrorMessage="Must be Gold or Platinum." /> |
<asp:linkbutton ID="Linkbutton1" runat="server" Text="Validate Name..." ValidationGroup="NameGroup" /> <asp:linkbutton ID="Linkbutton2" runat="server" Text="Validate Data..." ValidationGroup="PersonalDataGroup" />
<asp:ValidationSummary ID="ValidationSummary1" runat="server" ValidationGroup="NameGroup" ShowMessageBox="false" ShowSummary="true" HeaderText="The following errors occurred: (no message-box)" DisplayMode="List" /> <asp:ValidationSummary ID="ValidationSummary2" runat="server" ValidationGroup="PersonalDataGroup" ShowMessageBox="true" ShowSummary="true" HeaderText="The following errors occurred:" DisplayMode="BulletList" /> </form>
</body> </html>
</source>