一.数据验证控件
1.常用的验证控件
ASP.NET提供了5种验证控件和1个摘要控件。可以在visual studio开发工具的工具箱中的“验证”栏目找到,如图所示:
如果验证控件的验证信息没有通过,则提交按钮是提交不了数据的
二.非空和比较验证控件
1.非空验证控件
RequiredFieldValidator控件要求用户在页面必须输入内容,常用于注册信息的表单验证
RequiredFieldValidator控件常用属性见下表:
属性 | 说明 |
---|---|
ControlToValidate | 要验证控件的ID(这个属性所有控件都有) |
Text | 验证出错时的提示信息(这个属性所有控件都有) |
ErrorMessage | 提交给汇总控件的错误信息((这个属性所有控件都有) 如果Text属性为空,则验证出错,将显示该信息进行提示 |
以下代码用来测试RequiredFieldValidator控件属性的使用
<form id="form1" runat="server">
<div>
<div >用户名
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="请输入用户名" ControlToValidate="TextBox1" ForeColor="red"></asp:RequiredFieldValidator>
</div>
<div >密码
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErrorMessage="请输入密码" ControlToValidate="TextBox2" ForeColor="red"></asp:RequiredFieldValidator>
</div>
<div>
<asp:Label ID="Label1" runat="server" Text=" "></asp:Label>
</div>
<div>
<asp:Button ID="Button1" runat="server" Text="登录" OnClick="Button1_Click" style="height: 21px;width:60px" />
</div>
</div>
</form>
2.比较验证控件
CompareValidator控件用于执行数据类型检查,或比较一个值和另一个值,以确定这两个值是否与比较运算符指定的关系相配。例如在用户注册时,使用CompareValidator控件检查输入的密码和确认的密码是否相同。
还可以对生日进行数据类型检查,如用户生日必须符合日期类型,使用CompareValidator控件执行检查的方法是,移除ValueToCompare和ControlToCompare的值,并设置Type类型为Date,设置Operator的值为Date TypeCheck。
CompareValidator控件常用属性见下表:
属性 | 说明 |
---|---|
ControlToValidate | 要验证控件的ID(这个属性所有控件都有) |
ControlToCompare | 用于与验证的控件进行比较的控件的ID |
Type | 设置比较类型(如字符串、整形等),不同类型的比较会出错 |
Operator | 设置比较运算符,如等于(Equal)、大于等于(GreaterThanEqual)、小于等于(LessThanEqual)、大于(GreaterThan)和小于(LessThan)等。默认设置为等于 |
ValueToCompare | 用于比较的值 |
以下代码用来测试CompareValidator控件属性的使用
<form id="form1" runat="server">
<div>
<div >用户名
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="请输入用户名" ControlToValidate="TextBox1" ForeColor="red"></asp:RequiredFieldValidator>
</div>
<div >密码
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErrorMessage="请输入密码" ControlToValidate="TextBox2" ForeColor="red"></asp:RequiredFieldValidator>
</div>
<div >确认密码
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ErrorMessage="请输入确认密码" ControlToValidate="TextBox3" ForeColor="red"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CompareValidator1" runat="server" ErrorMessage="两次密码输入不一致" ControlToCompare="TextBox2" ControlToValidate="TextBox3" ForeColor="green"></asp:CompareValidator>
</div>
<div>
<asp:Label ID="Label1" runat="server" Text=" "></asp:Label>
</div>
<div>
<asp:Button ID="Button1" runat="server" Text="登录" OnClick="Button1_Click" style="height: 21px;width:60px" />
</div>
</div>
</form>