有效性验证控件使用非常容易。只需将它们添加到一个页面,设置一些属性,然后它们会完成所有艰难的工作。下面举例说明验证控件的使用。
(1) 新建一个ASP.NET网站项目Ex5_1。
(2) 切换到Default.aspx页面的设计视图,在Default.aspx页面上添加5个TextBox控件、1个Button控件;5个RequireFieldValidator控件、1个RangeValidation控件、1个RegularExpressionValidator、1个CompareValidator、1个Label控件和1个ValidationSummary控件。界面设计如图5-2所示。广州网站建设
![]() |
| (点击查看大图)图5-2 页面布局 |
(3) 选择控件,在属性窗口中修改控件的属性。
设置TextBox4、TextBox5的TextMode属性为"Password"。广州网站设计
将5个RequireFieldValidator控件的ControlToValidate分别设置到5个TextBox控件上,修改其Text属性为*(可以同时修改5个RequireFieldValidator控件的Text属性,方法是选定RequireFieldValidator1,按住Ctrl键,选择RequireFieldValidator2~ RequireFieldValidator5,在属性窗口中修改Text属性为*),设置其ErrorMessage属性分别为"姓名不能为空"、"年龄不能为空"、"邮箱不能为空"、"密码不能为空"和"确认密码不能为空"。
将RangeValidation控件的ControlToValidate属性设置为"TextBox2";Minimum Value属性设置为"1";MaximumValue设置为"100";Type属性设置为"Integer";ErrorMessage属性设置为"年龄范围1-100";Text属性为"*"。广州网站设计
将RegularExpressionValidator控件的ControlToValidate属性设置为"TextBox3";ErrorMessage属性设置为"邮箱格式错误";Text属性为*;单击ValidationExpression属性,单击其右边的浏览按钮,在弹出的【正则表达式编辑器】对话框中选择【Internet电子邮件地址】选项,如图5-3所示。单击【确定】按钮,完成设置。
将CompareValidator控件的ControlToValidate属性设置为TextBox5;ControlToCompare属性设置为TextBox4;ErrorMessage属性设置为"密码不对请重新输入";Text属性设置为*。
将Button控件的Text属性设置为"提交"。设置Label控件的Text属性为空。
(4) 切换到Default.aspx页面的设计视图,双击Button控件,在Default.aspx.cs代码窗口中添加其事件处理程序如下:
- protected void Button1_Click(object sender, EventArgs e)
- {
- Label1.Text = "全部验证正确!";
- }
![]() |
| 图5-3 【正则表达式编辑器】对话框 |
广州网站设计
- <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs"
- Inherits="_Default" %>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head runat="server">
- <title></title>
- </head>
- <body>
- <form id="form1" runat="server">
- <div>
- 姓名:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
- <asp:RequiredFieldValidator ID=" RequiredFieldValidator1"
- runat="server"
- ControlToValidate="TextBox1" ErrorMessage="姓名不能为空
- ">*</asp:RequiredFieldValidator>
- <br />
- 年龄:<asp:TextBox ID="TextBox2" runat= "server"></asp:TextBox>
- <asp:RequiredFieldValidator ID="Required FieldValidator2" runat="server"
- ControlToValidate="TextBox2" ErrorMessage="年龄不能为空
- ">*</asp:RequiredFieldValidator>
- <asp:RangeValidator ID="RangeValidator1" runat="server"
- ControlToValidate="TextBox2" ErrorMessage="年龄范围1-100"
- MaximumValue="100"
- MinimumValue="1" Type="Integer">* </asp:RangeValidator>
- <br />
- 邮箱:<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
- <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server"
- ControlToValidate="TextBox3" ErrorMessage="邮箱不能为空
- ">*</asp:RequiredFieldValidator>
- <asp:RegularExpressionValidator ID="RegularExpressionValidator1"
- runat="server"
- ControlToValidate="TextBox3" ErrorMessage="邮箱格式错误"
- ValidationExpression="\w+([-+.']\w+)*@\w+ ([-.]\w+)*\.\w+([-.]\w+)*">*</
- asp:RegularExpressionValidator>
- <br />
- 密码:<asp:TextBox ID="TextBox4" runat="server"
- TextMode="Password"></asp:TextBox>
- <asp:RequiredFieldValidator ID=" RequiredFieldValidator4" runat="server"
- ControlToValidate="TextBox4" ErrorMessage="密码不能为空
- ">*</asp:RequiredFieldValidator>
- <br />
- 确认密码:<asp:TextBox ID="TextBox5" runat="server"
- TextMode="Password"></asp:TextBox>
- <asp:RequiredFieldValidator ID=" RequiredFieldValidator5" runat="server"
- ControlToValidate="TextBox5" ErrorMessage="确认密码不能为空
- ">*</asp:RequiredFieldValidator>
- <asp:CompareValidator ID=" CompareValidator1" runat="server"
- ControlToCompare="TextBox4" ControlToValidate="TextBox5"
- ErrorMessage="密码不对请重新输入 ">*</asp:CompareValidator>
- <br />
- <br />
- <asp:Button ID="Button1" runat="server" onclick="Button1_Click"
- Text="提交" />
- <asp:Label ID="Label1" runat="server" Text=" "></asp:Label>
- <br />
- <asp:ValidationSummary ID=" ValidationSummary1" runat="server" />
- </div>
- </form>
- </body>
- </html>





