Bien, aprendiendo un poco JQuery, estoy haciendo una validación para los campos de un formulario. Básicamente para Cadenas y Números.
Por ahora tengo esto, lo que me falta es como ejecutar la expresión regular, es decir, que analice la sString ingresada como parámetro con la sExpReg.
function validarCampo( sString, sLength, sTipo ){
var sEstado = true;
var sExpReg = "";
var sObj = $("#" + sString);
if( sTipo == "str" ){ sExpReg = "([a-zA-Z]*)"; }
else if( sTipo == "num" ){ sExpReg = "([0-9]*)"; }
if( sObj.val() == "" ){
failField( sString, "Campo requerido." );
sEstado = false;
}
if( (sObj.val().length >= 1) && (sObj.val().length <= sLength) ){
failField( sString, "El tamaño debe ser mayor a " + sLength + "." );
sEstado = false;
}
return sEstado;
}
Las expresiones regulares pueden ser
sReg = /expresion/;
sReg = new RegExp("expresion");
sString.match(sReg);
podrias usar un plugin para validar formularios :) y para validar cadenas/numeros puedes usar la funcion isNaN()
Pero no me funciona, tengo al final, antes del return
if( !sObj.val().match( sExpReg ) ){
failField( sString, "Caracteres incorrectos.");
sEstado = false;
}
y en la validación del Form, tengo:
if( validarCampo( "Campo1", 4, "str" ) == true ){
}else{
return false;
}
Puedo ingresar números y me los deja pasar.
Hola, yo actualmente uso un plugin llamado:
jQuery plugin: Validation
http://bassistance.de/jquery-plugins/jquery-plugin-validation/
Esta muy bueno y validas los formularios muy rápido!