user2575502
user2575502

Reputation: 703

RequiredValidator is not working in asp.net

I want to validate some text box and dropdownlist control not to empty, like below highlight part:
enter image description here

and my GridView control code looks like below:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="EMPLOYEEID"
    DataSourceID="SqlDataSource1" ShowFooter="True">
    <Columns>
    <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" />
    <asp:TemplateField>
        <FooterTemplate>
        <asp:LinkButton ID="LinkButton1" runat="server">Insert</asp:LinkButton>&nbsp;&nbsp;
        </FooterTemplate>
    </asp:TemplateField>
    <asp:TemplateField HeaderText="EMPLOYEEID" SortExpression="EMPLOYEEID">
        <EditItemTemplate>
        <asp:Label ID="Label1" runat="server" Text='<%# Eval("EMPLOYEEID") %>'></asp:Label>
        </EditItemTemplate>
        <ItemTemplate>
        <asp:Label ID="Label1" runat="server" Text='<%# Bind("EMPLOYEEID") %>'></asp:Label>
        </ItemTemplate>
        <FooterTemplate>
        <asp:TextBox ID="txtInsertEmpID" runat="server"></asp:TextBox>
        <asp:RequiredFieldValidator ID="rfvInsertEmpID" ControlToValidate="txtInsertEmpID"
            Text="*" ForeColor="Red" ValidationGroup="Insert" runat="server" ErrorMessage="EmployeeID is required" />
        </FooterTemplate>
    </asp:TemplateField>
    <asp:TemplateField HeaderText="NAME" SortExpression="NAME">
        <EditItemTemplate>
        <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("NAME") %>'></asp:TextBox>
        <asp:RequiredFieldValidator ID="rfvEditName" ControlToValidate="TextBox1" Text="*"
            ForeColor="Red" runat="server" ErrorMessage="EmployeeName is required" />
        </EditItemTemplate>
        <ItemTemplate>
        <asp:Label ID="Label2" runat="server" Text='<%# Bind("NAME") %>'></asp:Label>
        </ItemTemplate>
        <FooterTemplate>
        <asp:TextBox ID="txtInsertName" runat="server"></asp:TextBox>
        <asp:RequiredFieldValidator ID="rfvInsertName" ControlToValidate="txtInsertName"
            Text="*" ForeColor="Red" ValidationGroup="Insert" runat="server" ErrorMessage="EmployeeName is required" />
        </FooterTemplate>
    </asp:TemplateField>
    <asp:TemplateField HeaderText="DEPTID" SortExpression="DEPTID">
        <EditItemTemplate>
        <asp:DropDownList ID="DropDownList1" SelectedValue='<%# Bind("DEPTID") %>' runat="server">
            <asp:ListItem>Select Department</asp:ListItem>
            <asp:ListItem Value="1">SM</asp:ListItem>
            <asp:ListItem Value="2">CDS</asp:ListItem>
            <asp:ListItem Value="3">AM</asp:ListItem>
            <asp:ListItem Value="4">FS</asp:ListItem>
        </asp:DropDownList>
        <asp:RequiredFieldValidator ID="rfvEditDept" ControlToValidate="DropDownList1" Text="*"
            ForeColor="Red" runat="server" ErrorMessage="Department is required" InitialValue="Select Department" />
        </EditItemTemplate>
        <ItemTemplate>
        <asp:Label ID="Label3" runat="server" Text='<%# Bind("DEPTID") %>'></asp:Label>
        </ItemTemplate>
        <FooterTemplate>
        <asp:DropDownList ID="ddlInsertDeptID" runat="server">
            <asp:ListItem>Select Department</asp:ListItem>
            <asp:ListItem Value="1">SM</asp:ListItem>
            <asp:ListItem Value="2">CDS</asp:ListItem>
            <asp:ListItem Value="3">AM</asp:ListItem>
            <asp:ListItem Value="4">FS</asp:ListItem>
        </asp:DropDownList>
        <asp:RequiredFieldValidator ID="rfvInsertDept" ControlToValidate="ddlInsertDeptID"
            Text="*" ForeColor="Red" ValidationGroup="Insert" runat="server" ErrorMessage="Department is required"
            InitialValue="Select Department" />
        </FooterTemplate>
    </asp:TemplateField>
    </Columns>
</asp:GridView>
<br />
<asp:ValidationSummary ID="ValidationSummary1" runat="server" ValidationGroup="Insert"
    ForeColor="Blue" />
<asp:ValidationSummary ID="ValidationSummary2" runat="server" ForeColor="Red" />    

I'm not sure what's the problem so that when I click Insert link button the page was submitted without any error message even though I don't type anything in the bottom of text boxes.

can anybody help me?

Upvotes: 0

Views: 55

Answers (2)

Abdul Ghaffar
Abdul Ghaffar

Reputation: 182

You are just Missing Validation Group in Insert LinkButton.

<asp:LinkButton ID="LinkButton1" runat="server" ValidationGroup="Insert">Insert</asp:LinkButton>&nbsp;&nbsp;

Upvotes: 1

Kate Fernando
Kate Fernando

Reputation: 381

Please use following code for required field by removing your

InitialValue="Select Department" and ErrorMessage="Department is required"

<asp:RequiredFieldValidator ID="rfvInsertDept" ControlToValidate="ddlInsertDeptID" Text="*" ForeColor="Red" ValidationGroup="Insert" runat="server">Department is required</asp:RequiredFieldValidator>

Upvotes: 1

Related Questions