我有以下表格: 第一部分: 无论如何你必须填写的表格 第二部分: 一个复选框 如果选中该复选框,您将看到第二部分表格 如果你不勾选复选框,第二部分表格将被隐藏
在本页末尾,您有一个发送按钮。
问题是:每当我不检查复选框并且隐藏第二个表单时它不会发送任何内容,因为按钮和两个表单具有相同的验证组,当然当表单2隐藏时没有人填写字段而我应该以某种方式对它们进行验证(只保留你应该填写的第一个表格的验证 - 无论有没有复选框)。
什么是最好的解决方案?
谢谢!!!
答案 0 :(得分:0)
我不是 ASP.NET 的最佳实践专家,所以这里有一些一般的建议 您可以检查是否选中了复选框,只检查了第二个表格。下面的伪代码示例:
Validate(form1, form2, checkbox)
bool1 = validate(form1)
if(checkbox.checked)
bool2 = validate(form2)
return bool1 && bool2
else
return bool1
希望有所帮助。
答案 1 :(得分:0)
好吧,让我们有两个验证组。一个用于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'));" />
看看是否有效。