(ASP.NET)验证控件有哪些?有什么作用?

如题所述

第1个回答  2010-12-21
验证控件的使用方法
① RequiredFieldValidator控件
当页面上的控件要求必须输入数据时,RequiredFieldValidator就起作用了,ControlToValidate属性选择需要验证的控件,而ErrorMessage属性则是校验不合法后显示的错误提示信息。
<HTML>
<HEAD>
<title>RequiredFieldValidator Example</title>
</HEAD>
<BODY>
<form id="Form1" runat="server">
Name:
<asp:TextBox id="TextBox1" runat="server" ></asp:TextBox>
<asp:RequiredFieldValidator id="RequiredFieldValidator1" runat="server"
ErrorMessage="Please enter your name" ControlToValidate="TextBox1"></asp:RequiredFieldValidator>
<asp:Button id="Button1" runat="server" Text="Button"></asp:Button>
</form>
</BODY>
</HTML>

②CompareValidator控件
CompareValidator控件是用来比较两个输入控件之间的数据一致性的,同时也可以用来校验控件中内容的数据类型:如整形、字符串型等。ControlToCompare和ControlToValidate属性用来设置进行比较的两个控件。
<HTML>
<HEAD>
<title>CompareValidator Example</title>
</HEAD>
<BODY>
<form id="Form1" runat="server">
<P>Password:
<asp:TextBox id="txtPwd" runat="server" TextMode="Password"></asp:TextBox><BR>
Confirm:
<asp:TextBox id="TxtCfm" runat="server" TextMode="Password"></asp:TextBox></P>
<P>
<asp:Button id="Button2" runat="server" Text="Button"></asp:Button>
<asp:CompareValidator id="CompareValidator1" runat="server" ErrorMessage="Password Error!"
ControlToValidate="TxtCfm" ControlToCompare="txtPwd"></asp:CompareValidator></P>
</form>
</BODY>
</HTML>

③RangeValidator控件
RangeValidator控件可以用来判断用户输入的值是否在某一特定范围内,属性MaximumValue和MinimumValue用来设定范围的最大和最小值。
<HTML>
<HEAD>
<title>RangeValidator Example</title>
</HEAD>
<BODY>
<form id="Form1" runat="server">
<P>Age:
<asp:TextBox id="TxtAge" runat="server"></asp:TextBox>
<asp:RangeValidator id="RangeValidator1" runat="server" ControlToValidate="TxtAge"
ErrorMessage="Age Error!" MaximumValue="99" MinimumValue="1"></asp:RangeValidator></P>
</form>
</BODY>
</HTML>

④RegularExpressionValidator控件
RegularExpressionValidator控件可以判断用户输入的表达式是否正确,如电话号码、邮编、URL等,ControlToValidate属性选择需要验证的控件,ValidationExpression属性则编写需要验证的表达式的样式,下面的例子就是一段校验邮编的代码。
<HTML>
<HEAD>
<title>RegularExpressionValidator Example</title>
</HEAD>
<BODY>
<form id="Form1" runat="server">
<P>Postal Code:
<asp:TextBox id="TxtPostalCode" runat="server"></asp:TextBox>
<asp:RegularExpressionValidator id="RegularExpressionValidator1" runat="server"
ControlToValidate="TxtPostalCode" ErrorMessage="Postal Code Error!"
ValidationExpression="\d6}"></asp:RegularExpressionValidator></P>
</form>
</BODY>
</HTML>

⑤CustomValidator控件
CustomValidator控件用于执行用户自定义的验证,这种校验既可以是服务器端的也可以是客户端的,下面的代码就是使用客户端验证邮编的例子。
<HTML>
<HEAD>
<title>CustomValidator Example</title>
</HEAD>
<BODY>
<form id="Form1" runat="server">
<P>Postal Code:
<asp:TextBox id="TextBox1" runat="server"></asp:TextBox>
<asp:CustomValidator id="CustomValidator1" runat="server" ControlToValidate="TextBox1"
ErrorMessage="CustomValidator" ClientValidationFunction="ClientValidate">
</asp:CustomValidator></P>
</form>
</BODY>
</HTML>
<script language="vbscript">
Sub ClientValidate(source, arguments)
If isnumeric(arguments.Value ) and len(arguments.Value)=6 Then
arguments.IsValid=true
Else
arguments.IsValid=false
End If
End Sub
</script>

⑥ValidationSummary控件
这个控件会将页面中所有的校验错误输出为一个列表,列表的显示方式由DisplayMode属性设置。
<HTML>
<HEAD>
<title>ValidationSummary Example</title>
</HEAD>
<body>
<form id="Form1" runat="server">
<P>Age:
<asp:TextBox id="TxtAge" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator id="RequiredFieldValidator1" runat="server"
ControlToValidate="TxtAge" ErrorMessage="Age Error!" Display="None"></asp:RequiredFieldValidator><BR>
Postal Code:
<asp:TextBox id="TxtPostalCode" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator id="RequiredFieldValidator2" runat="server"
ControlToValidate="TxtPostalCode" ErrorMessage="Postal Code Error!"
Display="None"></asp:RequiredFieldValidator></P>
<P>
<asp:Button id="Button1" runat="server" Text="Button"></asp:Button></P>
<P>
<asp:ValidationSummary id="ValidationSummary1" runat="server"
HeaderText="You must enter a value in the following fields:"></asp:ValidationSummary></P>
</form>
</body>
</HTML>本回答被提问者采纳
相似回答