ASP.NET RegularExpressionValidator 控件


定义和用法

RegularExpressionValidator 控件用于验证输入值是否匹配指定的模式。

注释:除非浏览器不支持客户端验证或 EnableClientScript 属性被设置为 false,否则将同时执行服务器端和客户端验证。

注释:如果输入控件为空,验证将失败。请使用 RequiredFieldValidator 控件,使字段必需(必填)。

属性

属性描述
BackColorRegularExpressionValidator 控件的背景颜色。
ControlToValidate要验证的控件的 id。
Display验证控件的显示行为。合法值有:
  • None - 控件不显示。仅用于 ValidationSummary 控件中显示错误消息。
  • Static - 如果验证失败,控件显示错误消息。即使输入通过验证,也在页面上预留显示消息的空间,即用于显示消息的空间是预先分配好的。
  • Dynamic - 如果验证失败,控件显示错误消息。如果输入通过验证,页面上不预留显示消息的空间,即用于显示消息的空间是动态添加的。
EnableClientScript布尔值,规定是否启用客户端验证。
Enabled布尔值,规定是否启用验证控件。
ErrorMessage当验证失败时,在 ValidationSummary 控件中显示的文本。 注释:如果未设置 Text 属性,文本也会显示在验证控件中。
ForeColor控件的前景颜色。
id控件的唯一 id。
IsValid布尔值,指示由 ControlToValidate 指定的控件是否通过验证。
runat规定该控件是一个服务器控件。必须设置为 "server"。
BackColorRegularExpressionValidator 控件的背景颜色。
Text当验证失败时显示的消息。
ValidationExpression规定验证输入控件的正则表达式。在客户端和服务器上,表达式的语法是不同的。JScript 用于客户端。在服务器上,根据您规定的语言使用。

实例

RegularExpressionValidator

<script  runat="server">
sub submit(sender As Object, e As EventArgs) 
if Page.IsValid then 
   lbl.Text="The page is valid!"
else 
   lbl.Text="The page is not valid!"
end if
end sub
</script>

<!DOCTYPE html>
<html>
<body>

<form runat="server">
Enter a US zip code:
<asp:TextBox id="txtbox1" runat="server" />
<br><br>
<asp:Button text="Submit" OnClick="submit" runat="server" />
<br><br>
<asp:Label id="lbl" runat="server" />
<br>
<asp:RegularExpressionValidator 
ControlToValidate="txtbox1"
ValidationExpression="\d{5}"
EnableClientScript="false"
ErrorMessage="The zip code must be 5 numeric digits!"
runat="server" />
</form>

</body>
</html>

在本例中,我们在 .aspx 文件中声明了一个 TextBox 控件,一个 Button 控件,一个 Label 控件,和一个 RegularExpressionValidator 控件。submit() 函数检测页面是否有效。如果有效,则在 Label 控件中返回 "The page is valid!"。如果无效,则在 Label 控件中返回 "The page is not valid!"。如果验证失败,将在 RegularExpressionValidator 控件中显示文本 "The zip code must be 5 numeric digits!"。