0% encontró este documento útil (0 votos)
233 vistas5 páginas

Validación de Formularios con jQuery

Este documento describe cómo validar formularios con jQuery utilizando la librería validate.js. Se explica cómo agregar clases a los campos para definir las reglas de validación y cómo usar los métodos .validate() y .valid() de jQuery para validar el formulario. También cubre la personalización de los mensajes de error.

Cargado por

Andrés Espino
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
233 vistas5 páginas

Validación de Formularios con jQuery

Este documento describe cómo validar formularios con jQuery utilizando la librería validate.js. Se explica cómo agregar clases a los campos para definir las reglas de validación y cómo usar los métodos .validate() y .valid() de jQuery para validar el formulario. También cubre la personalización de los mensajes de error.

Cargado por

Andrés Espino
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Validar formularios con Jquery

Validar formularios con Javascript lleva demasiado tiempo creando las funciones para cada
regla y muchas veces se torna una tarea tan necesaria como densa. Sin embargo Jquery a
través de su librería validate.js lo hace demasiado fácil.

En primer lugar para este ejemplo usaré la versión de Jquery 1.8 y la librería para
validación de formularios nombrado en el anterior párrafo de esta forma:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.js"></sc


ript>
<script type="text/javascript" src="http://jzaefferer.github.com/jquery-validati
on/jquery.validate.js"></script>

El proceso de validación para cada campo de formulario es muy sencillo, simplemente


debemos agregar al formulario una class con la validación que queremos validar. Por
ejemplo para validar que un input sea obligatorio completarlo deberíamos hacer algo así:

<input type="text" class="required" />

Con eso a Jquery le alcanza para validar ese campo. Pero también podríamos tener dos
reglas, que sea obligatorio y que sea un número. En ese caso:

<input type="text" class="required number" />

Y listo!

Ahora, para que al presionar el botón submit nos valide ese formulario debemos incluir
esto:

$("#id_del_formulario").validate();

Si el formulario es correcto el formulario será enviado, de lo contrario mostrará los errores


por pantalla.

Veamos un ejemplo muy sencillo:

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.js">
</script>
<script type="text/javascript" src="http://jzaefferer.github.com/jquery-vali
dation/jquery.validate.js"></script>
<script type="text/javascript">
function validarFormulario(){
$("#formulario").validate();
}
$(document).ready(function(){
validarFormulario();
});
</script>
<style type="text/css">
.error {color: #f00;}
</style>
</head>
<body>
<form id="formulario" action="" method="post">
<label for="nombre_y_apellido"> (*) Nombre y apellido </label>
<br />
<input type="text" name="nombre_y_apellido" id="nombre_y_apellido" class=
"required" />
<br />
<label for="sueldo"> (*) Sueldo estimativo </label>
<br />
<input type="text" name="sueldo" id="sueldo" size="5" maxlength="5" class
="required number" />
<br />
<label for="email"> (*) E-mail </label>
<br />
<input type="text" name="email" id="email" class="required email" />
<br />
<label for="telefono"> Tel&eacute;fono </label>
<br />
<input type="text" name="telefono" id="telefono" />
<br />
<label for="cv"> Cv </label>
<br />
<textarea rows="5" cols="50" name="cv" id="cv" class="required"></textare
a>
<br />
(*) Campos requeridos
<br />
<input type="submit" id="enviar" value="Enviar" />
<div id="contenedor_errores"></div>
</form>
</body>
</html>

¡Probarlo!

Ahora bien, también sucede otra cosa que seguramente habrás notado y es que los
mensajes de error son mostrados en inglés, para personalizar los mensajes
deberíamos cambiar la función:

function validarFormulario(){
$("#formulario").validate();
}

Por esto:

function validarFormulario(){
jQuery.validator.messages.required = 'Esta campo es obligatorio.';
jQuery.validator.messages.number = 'Esta campo debe ser num&eacute;rico.';
jQuery.validator.messages.email = 'La direcci&oacute;n de correo es incorrect
a.';
$("#formulario").validate();
}
Ahora ya sabemos cómo validar formularios antes de ser enviados al servidor, pero hay un
asunto más. Pensemos cómo funciona el método .validate(), al detectar que el usuario
pulsó el botón submit levantará todas las etiquetas y revisará las reglas de los campos de
formularios que son los valores de las clases, y si todos los campos son correctos enviará el
formulario. Sin embargo es muy probable que nosotros no queramos enviar el formulario,
por ejemplo, si usamos Ajax no necesitamos enviar el formulario ya que eso implica
recargar la página, y nosotros solamente necesitamos saber si el formulario está validado.
Para ello cambiaremos el método .validate() por .valid(), el cual nos devolverá true o false
dependiendo de si el formulario está correcto o no, y lo comprobaremos con un
evento .click(). Cambiar esto:

function validarFormulario(){
jQuery.validator.messages.required = 'Esta campo es obligatorio.';
jQuery.validator.messages.number = 'Esta campo debe ser num&eacute;rico.';
jQuery.validator.messages.email = 'La direcci&oacute;n de correo es incorrec
ta.';
$("#formulario").validate();
}

Por esto:

function validarFormulario(){
jQuery.validator.messages.required = 'Esta campo es obligatorio.';
jQuery.validator.messages.number = 'Esta campo debe ser num&eacute;rico.';
jQuery.validator.messages.email = 'La direcci&oacute;n de correo es incorrec
ta.';
$("#enviar").click(function(){
var validado = $("#formulario").valid();
if(validado){
alert('El formulario es correcto.');
}
});
}

Validar datos numéricos


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>

También podría gustarte