我的ASP.NET网络表单中有两个表单,每个表单都需要验证。
<form id="form1" method="POST" action="">
<asp:TextBox runat="server" ID="tb1" ValidationGroup="g1"/>
<asp:RequiredFieldValidator runat="server" ControlToValidate="tb1"
ValidationGroup="g1" Display="Dynamic">
field1 empty!!!
</asp:RequiredFieldValidator>
<asp:Button runat="server" Text="Submit1" ValidationGroup="g1"/>
</form>
<form id="form2" method="POST" action="">
<asp:TextBox runat="server" ID="tb2" ValidationGroup="g2"/>
<asp:RequiredFieldValidator runat="server" ControlToValidate="tb2"
ValidationGroup="g2" Display="Dynamic">
field2 empty!!!
</asp:RequiredFieldValidator>
<asp:Button ID="Button1" runat="server" Text="Submit2" ValidationGroup="g2"/></form>
关键是,当我提交第一个表单时,一切都很好,但是当我提交第二个表单时,会显示验证错误消息,但页面仍然会被提交。 我试图嵌套这些表格,它工作,验证正确完成。 但我认为从概念上讲这是一个糟糕的解决方案。
你能否提出别的建议?
非常感谢。
答案 0 :(得分:2)
ASP.NET“WebForm”中只能有一个表单: One (ASP.Net) Form, To Rule Them All
删除额外的表单标记,然后使用ValidationGroups
。