none
Validar que textbox no está vacío

    Question

  • Trabajo en asp.net y C#, tengo un textbox con el envento "TextChanged" y quiero que de ser posible se valide desde el lado cliente que el textbox no se encuentre vacío, para que no tenga que ir al servidor y me genere un error. Muchas gracias por la ayuda.

    Friday, September 13, 2013 3:22 PM

All replies

  • hola

    podrias usar el control RequiredFieldValidator para validar que se complete el campo y se evite el evento si es que no hay nada ingresado

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    Friday, September 13, 2013 3:30 PM
  • Gracias por la respuesta, pero he visto que funciona es por medio de un botón, yo necesito que valide desde el mismo textbox, que me valide que no está vacío el textbox antes de ingresar al servidor...

    Friday, September 13, 2013 3:38 PM
  • Hola

    puedes utilizar un JavaScript

         <script type="text/javascript" language="javascript">
    
                function ValidarTextBox() {
                    if ((document.getElementById("txtCantidad").value).length == 0) {
                        document.getElementById("txtCantidad").focus();
                        alert("Caja de Texto Vacia Ingrese Algo");
                    }
                }
     
        </script>
    <asp:TextBox ID = "txtCantidad" runat ="server" onblur="javascript:ValidarTextBox();"></asp:TextBox>
    Cuando intentes pasar a otra caja de texto aparecerá el mensaje y no podrás avanzar hasta ingresar algo


    Si se solucionó tu consulta no olvides marcar la respuesta de esta forma mantendremos el orden en el Foro.

    José Carlos Barba Gutierrez
    Lima - Perú
    Saludos

    • Proposed as answer by Pachecora Friday, September 13, 2013 3:54 PM
    Friday, September 13, 2013 3:45 PM
  • Coloqué el JavaScript indicado:

    function ValidarTextBox() {
            if ((document.getElementById("TxtNit").value).length == 0)
            {
                document.getElementById("TxtNit").focus();
                alert("Caja de Texto Vacia Ingrese Algo");
    
            }
        }

    y tengo el siguiente textbox:

    <asp:TextBox ID="TxtNit" runat="server" CssClass="TextBox" Width="120px" OnTextChanged="TxtNit_TextChanged" AutoPostBack="true" onblur="javascript:ValidarTextBox();"></asp:TextBox>

    Pero sigue ingresando al servidor cuando esta vacío...

    Friday, September 13, 2013 4:16 PM
  • aunque usar el control de validaicon seria mucho ams simple si quieres ir por javascript recuerda que es un control de asp.net por lo que debes usar

    if (document.getElementById("<%=TxtNit.ClientID%>").value == ''){ ...

    para poder seleccionar el control de forma efectiva

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    Friday, September 13, 2013 4:31 PM
  • Aún persiste el problema?

         <script type="text/javascript" language="javascript">
             function ValidarTextBox() {
                 if ((document.getElementById('<%=TxtNit.ClientId%>').value).length == 0) {
                     document.getElementById('<%=TxtNit.ClientId%>').focus();
                     alert("Ingrese Algo");
                 }
             } 
        </script>


    Si se solucionó tu consulta no olvides marcar la respuesta de esta forma mantendremos el orden en el Foro.

    José Carlos Barba Gutierrez
    Lima - Perú
    Saludos

    Friday, September 13, 2013 5:03 PM
  • El mensaje "Ingrese Algo" aparece, pero continua ingresando al servidor... ¿habrá alguna forma de detener el evento OnTextChanged="TxtNit_TextChanged" ????
    Friday, September 13, 2013 7:32 PM
  • Hola

    te recomendaría que usarás mejor un botón no me parece que debas tener la lógica del insert en el textbox


    Si se solucionó tu consulta no olvides marcar la respuesta de esta forma mantendremos el orden en el Foro.

    José Carlos Barba Gutierrez
    Lima - Perú
    Saludos

    Friday, September 13, 2013 8:06 PM