我在联系表单上有RequiredFieldValidator。
当用户点击“提交”时,它会按预期运行,但如果他们点击“取消”或表单上的任何多个菜单,则RequiredFieldValidator会取消操作。
我已经搜索过并发现我需要使用CausesValidation = False (使用this帖子)在我的表单上设置其他控件,但我是否必须为我页面上的每个控件执行此操作?
更糟糕的是,我的表单上的菜单包含在Master.Page中,它们大多是<DIV>
样式的CSS按钮,但是单击任何按钮会导致RequiredFieldValidator触发并且没有表格。
默认情况下不应该为False,我必须打开哪个控件设置验证?
答案 0 :(得分:3)
您可以设置验证组
<asp:TextBox ID="tb1" runat="server" ValidationGroup="ValidateMe" />
<asp:TextBox ID="tb2" runat="server" />
<asp:RequiredFieldValidator" ID="rfv1" runat="server" ControlToValidate="tb1" ValidationGroup="ValidateMe" />
...
<asp:Button ID="btnSubmit" runat="server" ValidationGroup="ValidateMe" />
来自here
编辑,对不起,我没有把它放在代码中,并且没有显示:
或者你可以随时使用和处理客户端上的那些,如果他们只是取消和类似的东西
<input type="button" >
答案 1 :(得分:1)
您只需要设置:
CausesValidation = False
执行操作的按钮
作为替代方案,您可以向控件和按钮添加ValidationGroup
属性,以控制哪些按钮引发验证。只会验证与指定的ValidationGroup
匹配的控件