所以,基本上我的页面上有多个 TextBox
并且其中一些使用 RequiredFieldValidator
进行验证。
我在 OnTextChanged
文本框字段上使用 txtMobileNo
事件从数据库中获取数据。
如果数据库中存在该数字,则其余的TextBox
从服务器端填充。
现在,我面临一个问题:我的 MobileNo
文本字段跳过 RegularExpressionValidator
验证,即使它是错误的。
只有当我的号码与验证逻辑匹配时,我才想重定向到服务器端。
<div class="col-md-4">
<asp:Label ID="lblfortxtMobileNo" runat="server" Text="Mobile No"></asp:Label>
<asp:TextBox ID="txtMobileNo" runat="server" AutoPostBack="true" OnTextChanged="txtMobileNo_TextChanged" MaxLength="10"></asp:TextBox>
<asp:RequiredFieldValidator ID="rqfvtxtMobileNo" runat="server" ErrorMessage="*" ControlToValidate="txtMobileNo" Display="Dynamic" ForeColor="Red"></asp:RequiredFieldValidator><br />
<asp:RegularExpressionValidator
ID="RegularExpressionValidator1"
runat="server"
ErrorMessage="Please Enter Valid Number"
ControlToValidate="txtMobileNo"
Display="Dynamic"
ForeColor="Red"
ValidationExpression="^([0-9]{10})$"
></asp:RegularExpressionValidator>
</div>
<div class="col-md-4">
<asp:Label ID="lblName" runat="server" Text="Name"></asp:Label>
<asp:TextBox ID="txtName" runat="server" AutoPostBack="true"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="*" ControlToValidate="txtName" Display="Dynamic" ForeColor="Red"></asp:RequiredFieldValidator><br />
</div>
<div class="col-md-4">
<asp:Button ID="btnSubmit" runat="server" Text="Save" OnClick="btnSubmit_Click" />
</div>
当我设置 CauseValidation = "true"
时,结果是我想要的。
但它会在调用 RequiredFieldValidator validation
函数之前检查所有其他 OnTextChanged
。
此时我只想检查 txtMobileNo
的正则表达式验证,并根据结果显示错误。