我需要验证文本框值,以确保它仅包含数字,并且我需要显示两条错误消息。当文本框为空并且输入不是数字时。我想使用正则表达式来验证输入。密码的最小长度为 8。这是我的代码:
<div class="col1"> </div>
<div class="col2">Password</div>
<div class="col3">:</div>
<div class="col4">
<asp:TextBox ID="passgen" CssClass="clsTxtBox10char" runat="server" TabIndex="1" MaxLength="8"/>
<span class="clsRed">*</span>
这是我的 JavaScript:
function validate() {
var PassGen = document.getElementById('<%=passgen.ClientID %>').value;
if (PassGen == "") {
alert("Password is empty");
return false;
}
}
如何更改我的代码以达到要求以及我应该使用哪个正则表达式?我正在使用 Visual Studio 2012、ASPX Web 表单和 C#。
最佳答案
您可以对单个控件使用多个验证器。
<asp:TextBox ID="passgen" CssClass="clsTxtBox10char" runat="server" TabIndex="1" />
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="passgen" ErrorMessage="Cannot be null" Display="Dynamic"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ErrorMessage="Numbers only" ControlToValidate="passgen" ValidationExpression=@"^\d+?$" Display="Dynamic"></asp:RegularExpressionValidator>
<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="passgen" Operator="GreaterThanEqual" Display="Dynamic" Type="Integer" SetFocusOnError="true" ValueToCompare="8" ErrorMessage="Minimum of 8 characters"></asp:CompareValidator>
关于javascript - ASPX 形式的错误消息和验证数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41051619/