【问题标题】:Two validation groups两个验证组
【发布时间】:2015-10-06 13:28:11
【问题描述】:

我有以下表格: 第一部分: 无论如何都必须填写的表格 第二部分: 一个复选框 如果您选中复选框,您将看到第二部分表格 如果您不选中复选框,则第二部分表单将被隐藏

在本页的末尾有一个发送按钮。

问题是:每当我不选中复选框并且第二个表单被隐藏时,它不会发送任何内容,因为按钮和两个表单具有相同的验证组,当然当表单二被隐藏时,没有人填写字段,我应该以某种方式取消它们的验证(只保留对您应该填写的第一个表单的验证 - 带或不带复选框)。

什么是最好的解决方案?

谢谢!!!

【问题讨论】:

    标签: c# asp.net .net forms validation


    【解决方案1】:

    我不是 ASP.NET 最佳实践方面的专家,所以这里有一些一般性建议 您可以检查复选框是否被选中,如果选中则仅验证第二个表单。示例伪代码如下:

    Validate(form1, form2, checkbox)
      bool1 = validate(form1)
      if(checkbox.checked)
        bool2 = validate(form2)
        return bool1 && bool2
      else
        return bool1
    

    希望有所帮助。

    【讨论】:

      【解决方案2】:

      好的,我们有两个验证组。一个用于 Form1 中的字段,另一个用于 Form2 中的字段。例如:valform1 和 valform2。

         <asp:Button ID="yourButton" runat="server" OnClick="ButtonSave_Click"
         CausesValidation="false" TabIndex="6"
         OnClientClick="return (Page_ClientValidate('valform1') && Page_ClientValidate('valform2'));" />
      

      看看这是否有效。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-11-04
        • 2020-10-05
        • 1970-01-01
        • 1970-01-01
        • 2017-11-18
        • 1970-01-01
        • 2017-07-03
        • 1970-01-01
        相关资源
        最近更新 更多