0

I have a drop down list and Im trying to get a required field validator working for it.

   <asp:RequiredFieldValidator ForeColor="Red" InitialValue="0" ID="RequiredFieldValidator4" runat="server" ControlToValidate="dropDownListGender" ErrorMessage="Gender">*</asp:RequiredFieldValidator>    
<asp:DropDownList CssClass="dd" runat="server" ID="dropDownListGender" >
    <asp:ListItem>Male</asp:ListItem>
    <asp:ListItem>Female</asp:ListItem>
    </asp:DropDownList>

any ideas wont work and other validation working so not sure whats the problem

Francis Gall
  • 77
  • 12

3 Answers3

0

By default an HTML select element generated for your ASP.NET DropDownList will have the first element selected. To work around this see this answer on SO: How to add a RequiredFieldValidator to DropDownList control?

Community
  • 1
  • 1
Jeremy
  • 575
  • 4
  • 7
0

Another thing you can do is to use <asp:comparevalidator> control like this:

    <asp:DropDownList CssClass="dd" runat="server" ID="dropDownListGender" >
        <asp:ListItem>Select Gender</asp:ListItem>
        <asp:ListItem>Male</asp:ListItem>
        <asp:ListItem>Female</asp:ListItem>
    </asp:DropDownList>
    <asp:CompareValidator id="cv1" runat="server" controltovalidate="dropDownListGender" 
errormessage="Required" operator="NotEqual" valuetocompare="Select Gender"></asp:CompareValidator>

operator="NotEqual" will make your job done. Hope this helps.

user704988
  • 436
  • 1
  • 9
  • 24
0

you have to add an initial listitem as below :-

<asp:RequiredFieldValidator ForeColor="Red" InitialValue="0" ID="RequiredFieldValidator4" runat="server" ControlToValidate="dropDownListGender" ErrorMessage="Gender">*</asp:RequiredFieldValidator>    
<asp:DropDownList CssClass="dd" runat="server" ID="dropDownListGender" >
    <asp:ListItem Value="0">Please Select</asp:ListItem>
    <asp:ListItem>Male</asp:ListItem>
    <asp:ListItem>Female</asp:ListItem>
    </asp:DropDownList>