我在使用asp.net时总是新手,我有这个正常的表达式验证器,它之前工作得非常好,但在我对我的文本框进行了大量编辑之后它再也无法正常工作了。
在编辑之前,当我尝试提交表单时,如果我的文本框为空或值为“”,则会显示错误消息,不会重定向到另一个页面。
在编辑之后,当我尝试提交表单时,无论文本框是否为空,它都会重定向到另一个页面。 不会停止重定向或显示验证程序页面
编辑前
<asp:TextBox ID="txttstImmLen" CssClass="forImmLenTb" runat="server" Width="118" Text="Enter Value Here" OnClick="this.value=''" onblur="tryPlaceholder(this,'Enter Value Here')" ></asp:TextBox>
<asp:RegularExpressionValidator ID="vldtstImmLen" ControlToValidate="txttstImmLen" Display="Dynamic" ErrorMessage="Immersion Length" Text="*" ValidationExpression="(0*[1-9]\d*)" Runat="server"/>
编辑后
<asp:TextBox ID="txttstImmLen" CssClass="forImmLenTb" runat="server" Width="118" onblur="tryPlaceholder(this);"></asp:TextBox>
<asp:RegularExpressionValidator ID="vldtstImmLen" ControlToValidate="txttstImmLen" Display="Dynamic" ErrorMessage="Immersion Length" Text="*" ValidationExpression="(0*[1-9]\d*)" runat="server"/> </td>
请帮忙!
答案 0 :(得分:5)
RegularExpressionValidator
不检查空值。您还需要使用RequiredFieldValidator
。
根据@ KarlAnderson的评论澄清:您在编辑之前有占位符文本导致RegularExpressionValidator
检查该值。
答案 1 :(得分:-1)
您可能需要设置ValidationGroup属性。如果导致验证的控件已设置。
这是我的问题。