CausesValidation 设置为“False”,但客户端验证仍在触发
-
01-07-2019 - |
题
我在 ASP.NET 1.1 Web 应用程序中有几个RequiredFieldValidator,当我按下“取消”按钮时,它们会在客户端触发,该按钮的 CausesValidation 属性设置为“False”。我怎样才能让它停止?
我不认为 1.1 版本支持验证组。
这是一个代码示例:
<asp:TextBox id="UsernameTextBox" runat="server"></asp:TextBox>
<br />
<asp:RequiredFieldValidator ID="UsernameTextBoxRequiredfieldvalidator" ControlToValidate="UsernameTextBox"
runat="server" ErrorMessage="This field is required."></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="UsernameTextBoxRegExValidator" runat="server" ControlToValidate="UsernameTextBox"
Display="Dynamic" ErrorMessage="Please specify a valid username (6 to 32 alphanumeric characters)."
ValidationExpression="[0-9,a-z,A-Z, ]{6,32}"></asp:RegularExpressionValidator>
<asp:Button CssClass="btn" id="addUserButton" runat="server" Text="Add User"></asp:Button>
<asp:Button CssClass="btn" id="cancelButton" runat="server" Text="Cancel" CausesValidation="False"></asp:Button>
更新: 后面的代码中正在生成一些动态页面,这肯定把它弄乱了,因为当我清理它时,它就开始工作了。
解决方案
验证组直到 2.0 版才添加到 ASP.NET。这是一个1.1的问题。
仔细检查您的设置并确保您没有在后面的代码中覆盖它。
其他提示
它们是否位于单独的验证组中(按钮和验证器控件)?
你不会手动调用 JS 来进行客户端验证吧?
不隶属于 StackOverflow