Código
//para validar campos con expresiones regulares function valida(campo,expreg){ var o = 'document.odo.'+campo; eval('o = '+o); if(!ExpReg(expreg,o.value)){ alert('Error en '+o.title); o.focus(); o.select(); return false; } } // para revisar todos los campos ¬¬ function revisa(){ if(!valida('folio','^[0-9]')){ return false;} if(!valida('p_gas','^[0-9]{1}\.[0-9]{2}$')){ return false;} if(!valida('no_eco','^0-9]{3}$')){ return false;} if(!valida('fecha','^[0-9]{4}\/[0-9]{2}\/[0-9]{2}$')){ return false;} if(!valida('km','^[0-9]$')){ return false;} if(!valida('importe','^[0-9]{3}')){ return false;} if(document.odo.solicitante.type=='select-one'){ if(!valida('solicitante','^[1-9]$')){ return false;} }else{ if(!valida('solicitante','^[a-zA-Z]$')){ return false;} } if(!valida('litros','^[0-9]{2}\.[0-9]{3}')){ return false;} return true; }
Mando a llamar la funcion con el
Código
onsubmit="return revisa();"
Funcionan bien las validaciones con las expresiones regulares, el problema es que solo me ejecuta el la primer validacion, o sea:
Código:
if(!valida('folio','^[0-9]')){ return false;}
y no pasa de ahí ¬¬
casi estoy seguro que es por el return false, pero si lo quito entonces se va al siguiente campo y al siguiente y temrina por enviar el form aun que tenga errores jajajaja
Bueno, escribo por que ya tengo un buen rato con esto y ya se me acabaron las ideas jijijiji, saludos y gracias
PD: la pregunta es, ¿donde esta el error? y ¿por que no funciona como deberia? XD