RequiredFieldValidator并阻止CausesValidation

时间:2012-07-27 00:56:22

标签: asp.net html requiredfieldvalidator

我在联系表单上有RequiredFieldValidator

当用户点击“提交”时,它会按预期运行,但如果他们点击“取消”或表单上的任何多个菜单,则RequiredFieldValidator会取消操作。

我已经搜索过并发现我需要使用CausesValidation = False (使用this帖子)在我的表单上设置其他控件,但我是否必须为我页面上的每个控件执行此操作?

更糟糕的是,我的表单上的菜单包含在Master.Page中,它们大多是<DIV>样式的CSS按钮,但是单击任何按钮会导致RequiredFieldValidator触发并且没有表格。

默认情况下不应该为False,我必须打开哪个控件设置验证?

2 个答案:

答案 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匹配的控件