2

ASP.NET Web フォームに 2 つのフォームがあり、それぞれに検証が必要です。

<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>

ポイントは、最初のフォームを送信するときはすべて問題ありませんが、フィールドが空の 2 番目のフォームを送信すると、検証エラー メッセージが表示されますが、ページはまだ送信されているということです。これらのフォームをネストしようとしましたが、うまくいきました。検証は正しく行われました。しかし、概念的にはそれは悪い解決策だと思います。

他に何か提案していただけますか?

どうもありがとう。

4

1 に答える 1

2

ASP.NET "WebForm" に含めることができるフォームは 1 つだけです: 1 つの (ASP.Net) フォームですべてを支配する

余分なフォーム タグを取り除き、ValidationGroups.

于 2012-05-02T12:37:58.230 に答える