Foros del Web » Programando para Internet » Javascript »

Problema con validación del formulario

Estas en el tema de Problema con validación del formulario en el foro de Javascript en Foros del Web. Buenas gente, a continuación os pego el código que tengo para que me valide, 4 campos (nombre, apellidos, email y comentarios), me gustaría saber, si ...
  #1 (permalink)  
Antiguo 22/05/2006, 19:18
 
Fecha de Ingreso: abril-2006
Mensajes: 218
Antigüedad: 18 años
Puntos: 0
Problema con validación del formulario

Buenas gente, a continuación os pego el código que tengo para que me valide, 4 campos (nombre, apellidos, email y comentarios), me gustaría saber, si alguien sabe como puedo acortar este pedazo código, pq creo que hay demasiado, para tan poca cosa que hace.

Muchas gracias.

function validar(formulario) {

var foc = formulario.nombre.focus();return (false);

if (formulario.comentarios.value.length < 4) {

alert("Escriba por lo menos 4 caracteres en el campo "Nombre".");
foc;

}

if (formulario.nombre.value == "") || (formulario.nombre.value == null) || (formulario.apellidos.value == "") || (formulario.apellidos.value == null) || (formulario.comentarios.value == "") || (formulario.comentarios.value == null) || (formulario.email.value == "") || (formulario.email.value == null) {

alert("Por favor rellene todos los campos");
foc;

}

var checkOK = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZÁÉÍÓÚ" + "abcdefghijklmnñopqrstuvwxyzáéíóú ";
var checkStr = formulario.nombre.value;
var checkStrs = formulario.apellidos.value;
var allValid = true;

for (i = 0; i < checkStr.length; i++) {

ch = checkStr.charAt(i);

for (j = 0; j < checkOK.length; j++)

if (ch == checkOK.charAt(j))

break;

if (j == checkOK.length) {

allValid = false;

break;

}

}

for (i = 0; i < checkStrs.length; i++) {

ch = checkStr.charAt(i);

for (j = 0; j < checkOK.length; j++)

if (ch == checkOK.charAt(j))

break;

if (j == checkOK.length) {

allValid = false;

break;

}

}

if (!allValid) {

alert("Escriba sólo letras en el campo Nombre o Apellidos.");
foc;

}


var valor = formulario.email.value;

if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(valor)){

alert("La dirección de email " + valor + " es correcta.") ;
return (true);

} else {

alert("La dirección de email es incorrecta.");
foc;

}


}
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:17.