在浏览器端验证:
asp:RegularExpressionValidator 是asp.net的一个验证控件,主要是匹配一下ControlToValidate的内容和ValidationExpression中的正则表达式。如果匹配成功,则不会出现ErrorMessage,否则前端显示ErrorMessage中的内容。
<asp:TextBox CssClass="input_newvpn" ID="TextBox1" runat="server"></asp:TextBox>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="TextBox1"
ErrorMessage="账户名必须为英文和数字的组合!"
ValidationExpression="^[A-Za-z]+$|^\d*[A-Za-z]+\d*$" BorderColor="White"
ForeColor="Red"></asp:RegularExpressionValidator>
但是有一个问题是asp:RegularExpressionValidator是客户端和服务器端同时验证的,即使客户端验证失败,服务器端任然会继续执行。因此可以采用一下判断方式来决定,当客户端验证成功后,才执行服务器端验证代码。
在服务器端验证:
if (Page.IsValid)
{....}
IsValid是asp:RegularExpressionValidator的一个属性,当验证成功是为true,否则为false。