Ver Mensaje Individual
  #7 (permalink)  
Antiguo 01/06/2010, 14:26
Avatar de Adler
Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Validar formulario

Hola

Cita:
Iniciado por javier55 Ver Mensaje
Lo he pulido como me habéis indicado, pero no funciona, es decir, con los 4 campos iniciales funciona ok, pero algo me dejo, ya que cuando compruebo todo el formulario con if anidados, se me queda colgado,

Por cierto por que he de poner function valida_envia(frm), en lugar del nombre del formulario "formulario" ??
Primero, te falta llamar a la función al sumitar el form

Cita:
<form name="formulario" onsubmit="return valida_envia(this)">
Segundo, frm es argumento que se le pasa, puedes escribir lo que quieras (a o campos o ,,,). Si te fijas en como se llama al form, se le pasa el argumento "this" que viene a ser como "this.form", por lo tanto no es necesario pasarle el nombre ni id

Tercero, ¿qué quieres decir con que se te "queda colgado"?

Cuarto, no hace falta que use "else" con cada condicional, puedes hacer algo como

Cita:
if(campo == 0) {
//lo que sea
return false;
}

if(otrocampo == 0) {
//lo que sea
return false;
}

if(ultimocampo == 0) {
//lo que sea
}else {
return true;
}
Por último has de cuidar como recoger los valores de los campos. Esto, nombre = frm.nombre.value.length; es correcto pero es mas practico esto otro nombre = frm.nombre; ya que después vas a usar focus

Por cierto, deberías de usar expresiones regulares para hacer una validación mas completa, ya que la cadena "12345" es válida para el campo nombre, apellido, etc.

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />

Última edición por Adler; 01/06/2010 a las 14:35 Razón: mas info