2017-02-03 5 views
0

Ich mag einig Textfeld und Dropdownlist-Kontrolle zur Validierung nicht zu leeren, wie unten Highlight Teil:
enter image description hereRequiredValidator funktioniert nicht in asp.net

und mein Gridview-Steuerelement Code sieht wie folgt:

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

Ich bin mir nicht sicher, was das Problem ist, so dass wenn ich Link Link einfügen klicken Sie die Seite ohne Fehlermeldung gesendet wurde, obwohl ich nichts in den unteren Textfeldern eingeben.

kann mir jemand helfen?

+0

Ich könnte falsch sein, aber nicht Validierung Kontrollen in einem GridView in der Vorlage "EditItem" gehen müssen? – sh1rts

Antwort

1

Sie sind nur Validation Gruppe fehlt in Fügen Sie LinkButton ein.

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

Bitte folgenden Code für erforderliches Feld verwenden, indem Sie Ihre

Initial = "Wählen Sie Abteilung" Entfernen und Errormessage = "Abteilung erforderlich ist"

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