Input parameter 'controlId' cannot be an empty string when using validator inside formview

I have a FormView where I have several fields. These fields should be checked by asp.net validators, for example:

<asp:FormView ID="OrderDetails" runat="server" DataKeyNames="ID" DataSourceID="DS_Order" DefaultMode="Edit" AutoGenerateRows="false" ClientIDMode="Static" RenderOuterTable="false"> <EditItemTemplate> <asp:TextBox ID="EinkaufsauftragsNr" runat="server" ClientIDMode="Static" Text='<%# Bind("EinkaufsauftragsNr") %>'/> <asp:CompareValidator runat="server" Operator="DataTypeCheck" Type="Integer" ValidationGroup="EditValidation" Display="Dynamic" ControlToValidate="EinkaufsauftragsNr" ErrorMessage="Nur Ganzzahlen erlaubt." CssClass="validator" /> ..... </EditItemTemplate> </FormView> 

But when I do this, I get: "The input parameter" controlId "cannot be an empty string." When I remove the validator, error-msg also disappears.

After searching for this problem on the net, I thought the problem was that the control could not be found inside the form, so I set clientidmode = "static" there →, but that did not solve my problem. Do you have any other suggestions on how I can solve this problem?

+4
source share
1 answer

You have not assigned id CompareValidator Control, You have to assign ID to asp:CompareValidator

Edit

 <asp:CompareValidator runat="server" Operator="DataTypeCheck" Type="Integer" ValidationGroup="EditValidation" Display="Dynamic" ControlToValidate="EinkaufsauftragsNr" ErrorMessage="Nur Ganzzahlen erlaubt." CssClass="validator" /> 

TO

 <asp:CompareValidator ID="SomeID" runat="server" Operator="DataTypeCheck" Type="Integer" ValidationGroup="EditValidation" Display="Dynamic" ControlToValidate="EinkaufsauftragsNr" ErrorMessage="Nur Ganzzahlen erlaubt." CssClass="validator" /> 
+8
source

All Articles