Foros del Web » Programando para Internet » ASPX (.net) »

Error al validar textBox

Estas en el tema de Error al validar textBox en el foro de ASPX (.net) en Foros del Web. Estimados: Tengo la siguiente gridview: Código: <asp:GridView ID="GridView1" runat="server" DataSourceID="ObjectDataSource1" AutoGenerateColumns="False" AllowPaging="True" onselectedindexchanged="GridView1_SelectedIndexChanged" AutoGenerateDeleteButton="True" AutoGenerateEditButton="True" CellPadding="4" ForeColor="#333333" GridLines="None"> <AlternatingRowStyle BackColor="White" /> <Columns> <asp:TemplateField HeaderText="Razon Social" ...
  #1 (permalink)  
Antiguo 07/11/2011, 06:24
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años
Puntos: 2
Error al validar textBox

Estimados:

Tengo la siguiente gridview:
Código:
  <asp:GridView ID="GridView1" runat="server" DataSourceID="ObjectDataSource1" 
            AutoGenerateColumns="False" AllowPaging="True" 
            onselectedindexchanged="GridView1_SelectedIndexChanged" 
            AutoGenerateDeleteButton="True" AutoGenerateEditButton="True" CellPadding="4" 
            ForeColor="#333333" GridLines="None">
            <AlternatingRowStyle BackColor="White" />
            <Columns>
 <asp:TemplateField HeaderText="Razon Social" SortExpression="razonSocial">
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBoxRazonSocial" runat="server" Text='<%# Bind("razonSocial") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label3" runat="server" Text='<%# Bind("razonSocial") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
.....
Utilizo un validator para validar ese campo:

Código:
   <asp:RequiredFieldValidator runat="server" ControlToValidate= "TextBoxRazonSocial" ErrorMessage="RequiredFieldValidator"></asp:RequiredFieldValidator>"

Me da el siguiente error:

Unable to find control id 'TextBoxRazonSocial' referenced by the 'ControlToValidate' property of ''.


Si yo veo bien, el control se llama de la forma en que lo estoy referenciando.
Cual puede ser el problema?

Muchas gracias desde ya.
  #2 (permalink)  
Antiguo 07/11/2011, 10:52
Avatar de AWesker  
Fecha de Ingreso: octubre-2008
Mensajes: 177
Antigüedad: 15 años, 6 meses
Puntos: 27
Respuesta: Error al validar textBox

¿Te hace falta algo de código o no has colocado en RequiredFieldValidator dentro de la plantilla del GridView? porque de ser así, esta es la causa del error. Al estar dentro de un GridView, el nombre de un control además de tener el que le colocaste, adquiere un formato de nombre que se basa en el GridView.
  #3 (permalink)  
Antiguo 07/11/2011, 11:06
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 20 años
Puntos: 2
Respuesta: Error al validar textBox

Gracias por la respuesta.
Lo puse fuera del Grid, ya que dentro del mismo me da error. Dice que no conoce validator.

Este es el código:

Código:

 <asp:GridView ID="GridView1" runat="server" DataSourceID="ObjectDataSource1" 
            AutoGenerateColumns="False" AllowPaging="True" 
            onselectedindexchanged="GridView1_SelectedIndexChanged" 
            AutoGenerateDeleteButton="True" AutoGenerateEditButton="True" CellPadding="4" 
            ForeColor="#333333" GridLines="None">
            <AlternatingRowStyle BackColor="White" />
            <Columns>
                <asp:TemplateField HeaderText="#" SortExpression="id">
                   <%-- <EditItemTemplate>
                        <asp:TextBox Width="4" ID="TextBox1" ReadOnly="true" runat="server" Text='<%# Bind("id") %>'></asp:TextBox>
                    </EditItemTemplate>--%>
                    <ItemTemplate>
                        <asp:Label Width="4" Enabled="false"  ID="Label1" runat="server" Text='<%# Bind("id") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                  <asp:TemplateField HeaderText="Razon Social" SortExpression="razonSocial">
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBoxRazonSocial" runat="server" Text='<%# Bind("razonSocial") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label3" runat="server" Text='<%# Bind("razonSocial") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
<asp:TemplateField HeaderText="Provincia" SortExpression="Provincia">
                    <EditItemTemplate>
                       
                        <asp:DropDownList ID="DropDownList1" runat="server"
                         DataSourceID="ObjectDataSourceProvincia" 
                         DataTextField="Nombre" DataValueField="IdProvincia" selectedValue='<%# Bind("idProvincia")%>'>  
                        
                        
                       
                        </asp:DropDownList>

                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label4" runat="server" Text='<%# Bind("Provincia.Nombre") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                        
                <asp:TemplateField HeaderText="Localidad" SortExpression="localidad">
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBox4" runat="server" Text='<%# Bind("localidad") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label4" runat="server" Text='<%# Bind("localidad") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="Direccion" SortExpression="direccion">
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBox5" runat="server" Text='<%# Bind("direccion") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label6" runat="server" Text='<%# Bind("direccion") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="CodPostal" SortExpression="codPostal">
                    <EditItemTemplate>
                        <asp:TextBox Width="10" ID="TextBox6" runat="server" Text='<%# Bind("codPostal") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label7" runat="server" Text='<%# Bind("codPostal") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="IVA" SortExpression="iva">
                    <EditItemTemplate>
                        <asp:DropDownList ID="DropDownListIVA" runat="server" DataSourceID="ObjectDataSourceIVA" DataTextField="IVA" DataValueField="idIVA" selectedValue='<%# Bind("idIva")%>' 
                        
                        >
                        </asp:DropDownList>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label5" runat="server" Text='<%# Bind("IVA.iva") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                      <asp:TemplateField HeaderText="Fecha alta" SortExpression="fecha">
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("fecha") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label2" runat="server" Text='<%# Bind("fecha") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:BoundField DataField="estado" HeaderText="Estado" 
                    SortExpression="estado" />
                
            </Columns>
            <EditRowStyle BackColor="#2461BF" />
            <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
            <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
            <RowStyle BackColor="#EFF3FB" />
            <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
            <SortedAscendingCellStyle BackColor="#F5F7FB" />
            <SortedAscendingHeaderStyle BackColor="#6D95E1" />
            <SortedDescendingCellStyle BackColor="#E9EBEF" />
            <SortedDescendingHeaderStyle BackColor="#4870BE" />
        </asp:GridView>
            <asp:ObjectDataSource ID="ObjectDataSourceIVA" runat="server" 
            SelectMethod="getALL" TypeName="BLL.GestorIVA">
        </asp:ObjectDataSource>
            <asp:ObjectDataSource ID="ObjectDataSourceProvincia" runat="server" 
                SelectMethod="getAll" TypeName="BLL.GestorProvincia"></asp:ObjectDataSource>
        <asp:ObjectDataSource ID="ObjectDataSource1" runat="server" 
            SelectMethod="getAll" TypeName="BLL.GestorClientes" 
            DataObjectTypeName="BE.Cliente" UpdateMethod="update">
        </asp:ObjectDataSource>

       <%-- 
       Validators *****************************************************************
       
       --%>
     <asp:RequiredFieldValidator runat="server" ControlToValidate= "TextBoxRazonSocial" ErrorMessage="RequiredFieldValidator"></asp:RequiredFieldValidator>"

Muchas gacias nuevamente

Etiquetas: asp, gridview, textbox
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:30.