Validar campos numéricos con jQuery Numeric

En este artículo vamos a presentar una forma elegante de validar valores numéricos en las cajas de textos de los formularios Web. Existe un plugin jQuery que se llamado jquery.numeric.js.

El plugin simplemente no te deja escribir nada más que dígitos o números en los campos donde se aplique. Puedes indicar que son números enteros o decimales.

Lo podemos utilizar de la siguente forma:

<script type="text/javascript" src="../jquery.js"></script>
<script type="text/javascript" src="jquery.numeric.js"></script>
<script type="text/javascript">
$(document).ready(function(){
    $('#entero').numeric();
    $('#decimal').numeric(","); 
});
</script>

Y luego ya dentro del formulario añadiríamos los inputs con el id correspondiente:

<form method="post">
    <label>Número entero: </label>
    <input type="text" name="entero" id="entero" /><br/>
    <label>Número decimal: </label>
    <input type="text" name="decimal" id="decimal" />
</form>

Descargar plugin

Ver el ejemplo en funcionamiento

Autor
Escrito por Jose Aguilar - Director ejecutivo y tecnológico en JA Modules. Experto programador PrestaShop y Experto programador WordPress.
Te ha servido? Valora esta entrada!
(10 votos, promedio: 5 de 5)
Comparte en las redes sociales
¿Buscas trabajo de programador?

23 respuestas a “Validar campos numéricos con jQuery Numeric”

  1. Mat dice:

    Hola, necesito ayuda quiero que en el campo input no se puedan ingresar numeros negativos y decimales, ya intente varia formas y no me deja colocarlos al mismo tiempo.

    $(«.numeric»).numeric(false, function() {});//Solo numeros enteros
    $(«.numeric»).numeric({ negative : false }); // no acepte numeros negativos

  2. josias dice:

    buenas tardes soy nuevo con esto y no encuentro solucion por ningun lado . ya tengo un formulario funciona a la perfeccion es un formulario de pago. y tengo una base de dato con datos de clientes . lo que quiero hacer es que los clientes puedan registrar el pago si existe la cedula en la base de dato si la cedula no existe que el registro no se pueda llevar acabo . alguna ayuda?? lo agradeceria de antemano

    • Jose Aguilar dice:

      Hola,

      Este tutorial no sirve para lo que está indicando. En tu caso deberás armar la lógica con PHP para saber si el cliente está registrado o no hacer una cosa u otra.

      Si necesitas ayuda con este trabajo personal, envíanos un ticket al centro de soporte con todos los detalles y allí te diremos como proceder. -> https://www.jose-aguilar.com/soporte/

      Saludos

  3. fsan dice:

    Hola, se quisiera saber como se agrega jquery.numeric al proyecto, pues descarge el plugin y referencie la carpeta en la cual se localiza en la cabecera html, pero no me aparece, agradeceria cualquier tipo de ayuda

  4. juan dice:

    efectivamente valida numeros pero que pasa cuando copias o cortas de otro input que no sean numeros??? igual los deja introducir, es decir solo los valida al introducir.

  5. Esperanza dice:

    Genial Muchas pero muchas gracias!!!

  6. D dice:

    Genial! muchas gracias!

  7. mslarco dice:

    Realice esta función para validar precios enteros texto si tienen una mejora agradecería que me hagan saber, la utilizo en el onkeyup o en el onkeypress

    function validar_ingreso_dato(input, validacion) {

    validacion = validacion.toLowerCase();

    if (validacion == «precio») {

    if (($(input).val().split(«.»)[0]).indexOf(«00») > -1) {
    $(input).val($(input).val().replace(/^00/, «0»));
    } else {
    $(input).val($(input).val().replace(/[^0-9.]/g, «0»));
    }

    if ($(input).val().split(«.»)[2] != null || ($(input).val().split(«.»)[2]).length) {

    $(input).val($(input).val().substring(0, $(input).val().lastIndexOf(«.»)));

    }

    }

    if (validacion == «text») {

    // $(input).val($(input).val().replace(/[ss]/g, «(ESPACIO)»));

    $(input).val($(input).val().replace(/[^a-zA-Zs]/g, «»));

    $(input).val($(input).val().replace(/ss/, » «));

    $(input).val($(input).val().replace(/^.s/, «»));

    }

    if (validacion == «int») {

    $(input).val($(input).val().replace(/[^0-9]/g, «»));

    $(input).val($(input).val().replace(/^0/, «»));

    }

    }

  8. Arthur dice:

    que buen blog

    Saludos!!

  9. Rigo Hernández dice:

    Excelente aportación me ha servido de mucho, muchas gracias.

    Saludos

  10. Sr Equis dice:

    Disculpa pero no me funciono me gustaría saber tu correo para mandarte la imagen de las pruebas que hice

  11. Rodrigo dice:

    Super mi hermano!!

  12. Adrián Aloe dice:

    Excelente! me re sirvio. Mil gracias! Saludos.

  13. jose dice:

    perdon quise decir que la caja me acepta escribir el 10.9 cuando no deberia ya que uso la funcion numeric sin parametros y solo quiero que ingrese numeros enteros

  14. jose dice:

    perdon quise decir que la caja me acepta escribir el 10.9 cuando no deberia ya que uso la funcion numeric sin parametros

  15. jose dice:

    como puedo hacer para que la caja de texto solo reciba numeros enteros ya que la funcion numeric() sin parametros permite escribir el punto es decir digito 10.9 y no me lo acepta y eso no es entero ¿como podria arreglar eso?

  16. Angel Rubio dice:

    Muchas gracias!!! El plugin me sirvió mucho para validar un formulario que estoy elaborando. Excelente aporte!!

  17. David Blanco dice:

    Gracias excelente. Bueno aqui les dejo mi colaboracion para los que quieran trabajar con JQGRID

    https://plus.google.com/116785059505984459570/posts

    Saludos.

  18. asier dice:

    joder tio me has salvado la vida……. te comeria a besos pero quedaria un poco Gay…
    No sabes lo que me ha costado encontrar este puto validador y digo lo de puto no por tu codigo que es la ostia si no por lo que me ha costado……

    Muchas gracias Jose…. pide lo que quieras…..

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Ver más sobre