Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Multiple RequiredFieldValidators on page but they need to apply to different button clicks

I'm working on a asp.net page and I have the following scenario:

I have 2 fields that have requiredfieldvalidators which need to "fire" their validation when button1 is clicked but NOT when button2 is clicked and another field which is validated by another requiredfieldvalidator with the opposite scenario. (requiredfieldvalidator for this field needs to "fire" when button2 is clicked but NOT when button1 is clicked.) Any suggestions for the simplest solution would be appreciated.

Thanks in advance

like image 731
Ben Avatar asked Oct 13 '10 13:10

Ben


2 Answers

You can use Validation Group.

Sample code here:

<body>
    <form id="form1" runat="server">
    <div>
        <h1>Group1</h1>
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="RequiredFieldValidator" ControlToValidate="TextBox1" ValidationGroup="group1"></asp:RequiredFieldValidator>
        <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
        <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErrorMessage="RequiredFieldValidator" ControlToValidate="TextBox2" ValidationGroup="group1"></asp:RequiredFieldValidator>

        <br /><br />
        <h1>Group2</h1>
        <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
        <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ErrorMessage="RequiredFieldValidator" ControlToValidate="TextBox3" ValidationGroup="group2"></asp:RequiredFieldValidator>
        <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
        <asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ErrorMessage="RequiredFieldValidator" ControlToValidate="TextBox4" ValidationGroup="group2"></asp:RequiredFieldValidator>

        <br /><br />
        <asp:Button ID="Button1" runat="server" Text="Button" ValidationGroup="group1" />
        <asp:Button ID="Button2" runat="server" Text="Button" ValidationGroup="group2" />
    </div>
    </form>
</body>
like image 182
bla Avatar answered Oct 04 '22 23:10

bla


Use validation groups. See the next article http://www.dotnet-guide.com/validationgroups.html.

like image 33
RonaldV Avatar answered Oct 04 '22 22:10

RonaldV