防止comparevalidator在单击按钮之前显示错误

时间:2012-01-04 18:23:36

标签: c# asp.net validation

我有一个密码文本框并确认密码文本框,我在其中使用comparevalidator来确保它们是相同的。如果不是,我希望用户收到一条错误消息,说明它们不匹配。但是,我不想在用户单击按钮之前显示它。目前发生的是当我从第一个文本框切换到第二个文本框时,我立即收到该错误。

如何在单击按钮之前阻止此错误显示?

1 个答案:

答案 0 :(得分:4)

解决此问题的一种非常简单的方法是撤销ControlToCompareControlToValidate

<label>Password: <asp:TextBox ID="password" runat="server"></asp:TextBox></label><br/>
<label>Confirm Password:<asp:TextBox ID="confirmPassword" runat="server"></asp:TextBox></label>
<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToCompare="password" ControlToValidate="confirmPassword" ErrorMessage="Passwords do not match"></asp:CompareValidator>

通过反转这些属性,只有在选中“确认密码”文本框时才会进行验证。 (这假设用户填写表格自上而下而不是自下而上,但是无论如何