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

标签 c# asp.net validation

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

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

最佳答案

解决这个问题的一个非常简单的方法是反转 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>

通过反转这些属性,只有当它们关闭确认密码文本框时才会进行验证。 (这假设用户自上而下而不是自下而上地填写表单,但无论如何谁会这样做)

关于c# - 防止 comparevalidator 在单击按钮之前显示错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8731922/

相关文章:

c# - 从集合中删除在 Nhibernate 中不起作用

c# - 你见过合理使用 protected 内部访问修饰符的设计吗?

c# - 强制下载文件,默认不在浏览器上打开它

javascript - JS 数字和连字符验证

c# - TextBox 可以显示的最大字符数

c# - 数据类型从int转换为string时发生错误

c# - ASP.Net Core 2.1 中的身份 < - 自定义 AccountController

php - 需要 Laravel 验证|除 0 外存在

css - 导致错误的神秘 span 标签

c# - httpclient PostAsJsonAsync方法未找到.net框架4并行解决方案