Foros del Web » Programando para Internet » Javascript »

Error al validar campo obligatorio en Formulario, se envia siempre y con errores

Estas en el tema de Error al validar campo obligatorio en Formulario, se envia siempre y con errores en el foro de Javascript en Foros del Web. Hola estoy intentando hacer un formulario php y validar algunos campos vacios (hacerlos obligatorios) con javascript de la siguiente manera: Código HTML: <script language= "JavaScript" ...
  #1 (permalink)  
Antiguo 23/01/2006, 14:40
Avatar de kahlito
Colaborador
 
Fecha de Ingreso: marzo-2003
Ubicación: En el Estrecho y el mar
Mensajes: 2.936
Antigüedad: 21 años, 1 mes
Puntos: 65
Error al validar campo obligatorio en Formulario, se envia siempre y con errores

Hola estoy intentando hacer un formulario php y validar algunos campos vacios (hacerlos obligatorios) con javascript de la siguiente manera:

Código HTML:
<script language="JavaScript">
   function valida_envia(){
    //valido el nombre
    if (document.fvalida.nombre.value.length==0){
       alert("Tiene que escribir su nombre")
       document.fvalida.nombre.focus()
       return false;
    } 
	if (document.fvalida.apellido.value.length==0){
       alert("Tiene que escribir su apellido")
       document.fvalida.apellidos.focus()
       return false;
    } 
	else {//el formulario se envia
    alert("Muchas gracias por enviar el formulario");
    document.fvalida.submit();}
} 
</script> 

Código HTML:
<form name="fvalida" action="formulariovalida.php" method="post" >
<input type="text" name="nombre" size="30" maxlength="50" />
<input type="text" name="apellidos" size="30" maxlength="50" />
<input type="submit" value="  Enviar  " onclick="valida_envia()"/> 
Sin embargo al darle a submit me sale la alerta de rellenar el nombre y luego automáticamente se envia el formulario sin haber puesto el nombre ni nada de nada , ¿alguna otra solución?
  #2 (permalink)  
Antiguo 23/01/2006, 15:03
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
haslo asi mejor:

Código PHP:
<script language="javascript">
 function 
ValidarContacto(f) {
  if (
f.nombre.value == "") {
   
alert("Debe colocar su Nombre.");
   
f.nombre.focus();
   return 
false;
  }
  
  if (
f.apellidos.value == "") {
   
alert("Debe colocar su Apellido.");
   
f.apellidos.focus();
   return 
false;
  }
  
  
document.body.style.cursor "wait";
  
  return 
true;
 }
</script> 
Código:
 
<form name="fvalida" action="formulariovalida.php" method="post" onsubmit="return valida_envia(this)"> <input type="text" name="nombre" size="30" maxlength="50" /> <input type="text" name="apellidos" size="30" maxlength="50" /> <input type="submit" value=" Enviar "> </form>

te falto colocar el tag "</form>"

saludos
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #3 (permalink)  
Antiguo 23/01/2006, 15:25
Avatar de kahlito
Colaborador
 
Fecha de Ingreso: marzo-2003
Ubicación: En el Estrecho y el mar
Mensajes: 2.936
Antigüedad: 21 años, 1 mes
Puntos: 65
Hola Saruman, ahora si me funciona.

Dejo aquí un pequeño cambio (de nombres) sin importancia por si le sirve a alguien:

Código HTML:
<form name="f" action="formulariovalida.php" method="post" onsubmit="return ValidarContacto(this)"> 
Muchas gracias por tu ayuda

Saludosss
  #4 (permalink)  
Antiguo 23/01/2006, 15:28
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
no, no es necesario.
el this que puse es para que no halla necesidad de ponerle el nombre al form... comprendes?

chequeate de nuevo la funcion

saludos
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #5 (permalink)  
Antiguo 23/01/2006, 15:45
Avatar de kahlito
Colaborador
 
Fecha de Ingreso: marzo-2003
Ubicación: En el Estrecho y el mar
Mensajes: 2.936
Antigüedad: 21 años, 1 mes
Puntos: 65
Hola de nuevo.

Llevas razón en lo del name veo que no hace falta.

Sin embargo lo dejo con el nombre de la funcion cambiada para no confundir

onsubmit="return valida_envia(this)"> por onsubmit="return ValidarContacto(this)">

Gracias de nuevo, saludosss
  #6 (permalink)  
Antiguo 05/04/2007, 02:38
 
Fecha de Ingreso: abril-2007
Mensajes: 31
Antigüedad: 17 años
Puntos: 0
Re: Error al validar campo obligatorio en Formulario, se envia siempre y con errores

No se como borrar este mensaje, ya puse uno nuevo en la principal del JS

Última edición por realxp; 05/04/2007 a las 03:59 Razón: Cambio
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 16:15.