我有一个asp.net页面,我认为它会有多个表单。我添加了一个asp面板,并将表单和验证器添加到控件中。一切正常。但是,如果我尝试添加另一个面板和表单,则页面无效。我这样做的原因是任何提交数据的尝试都会触发所有验证器。我知道我可以将每个表单分解成每个页面。但对于我的设计来说,这似乎很傻。
我想要的是在一个页面上拥有多个表单。
或者使验证器仅在某些情况下起作用。
或者将验证器分组,仅在与验证器同属于同一面板的按钮单击时才起作用。
<%-- Group One --%>
<asp:TextBox ID="TextBox1" runat="server"
ValidationGroup="One" />
<asp:RequiredFieldValidator ID="RequiredFieldValidator1"
runat="server"
Display="Dynamic"
ValidationGroup="One"
ControlToValidate="TextBox1"
Text="Textbox one is required." />
<asp:Button runat="server" ID="Button1"
OnClick="Button1_Click"
Text="Submit"
ValidationGroup="One" />
<hr/>
<%-- Group Two --%>
<asp:TextBox ID="TextBox2" runat="server"
ValidationGroup="Two" />
<asp:RequiredFieldValidator ID="RequiredFieldValidator2"
runat="server"
Display="Dynamic"
ValidationGroup="Two"
ControlToValidate="TextBox2"
Text="Textbox two is required.." />
<asp:Button runat="server" ID="Button2"
OnClick="Button2_Click"
Text="Submit"
ValidationGroup="Two" />
注意:如果您想在单个页面中使用多个表单标记,您可能需要查看ASP.Net MVC。