Foros del Web » Programando para Internet » Javascript »

Campos imprescindibles

Estas en el tema de Campos imprescindibles en el foro de Javascript en Foros del Web. Como puedo hacer que un <form> haya unos campos imprescindibles que si lo los llenan no enviar la información y dar un aviso Muchas gracias ...
  #1 (permalink)  
Antiguo 02/06/2011, 09:05
 
Fecha de Ingreso: enero-2011
Ubicación: Barcelona
Mensajes: 79
Antigüedad: 13 años, 3 meses
Puntos: 1
Campos imprescindibles

Como puedo hacer que un <form> haya unos campos imprescindibles que si lo los llenan no enviar la información y dar un aviso

Muchas gracias de antemano
  #2 (permalink)  
Antiguo 02/06/2011, 09:18
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años
Puntos: 71
Respuesta: Campos imprescindibles

Checate este enlace, la situacion fue un poco similar, para validar los campos....

http://www.forosdelweb.com/f13/junta...4/#post3860247

Cualquier cosa.... comenta =D

EXITO !!!!
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!
  #3 (permalink)  
Antiguo 07/06/2011, 22:29
 
Fecha de Ingreso: enero-2010
Mensajes: 63
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: Campos imprescindibles

este es un ejemplo sencillo para validar un formulario con javascript.

Código HTML:
Ver original
  1.   <head>
  2.   <title></title>
  3.  
  4.   <script language="javascript">
  5.  
  6.    function validar_campos()
  7.   {
  8.       if ((document.myform.name.value=="") || (document.myform.name.value==null))
  9.     {
  10.        document.myform.name.focus();
  11.        alert ("campo obligatorio...!!!");
  12.        return false;
  13.     }
  14.    return true;
  15.   }
  16.      
  17.     function enviar()
  18.       {
  19.        
  20.         if (validar_campos())
  21.         {
  22.            document.myform.submit();    
  23.         }
  24.       }
  25.    
  26.  
  27.   </head>
  28.   <body>
  29.  
  30.   <form name="myform" action="destino.php" method="POST">
  31.  
  32.   Nombre <input name="name" type="text" size=60 ><br>
  33.  
  34.    <input type="button" value="Enviar" onclick="enviar();">
  35.  
  36.   </form>
  37.  
  38.   </body>
  39. </html>
  #4 (permalink)  
Antiguo 08/06/2011, 02:27
 
Fecha de Ingreso: enero-2011
Ubicación: Barcelona
Mensajes: 79
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: Campos imprescindibles

He provado de hacer lo que me dices jobu y después de hacerme el alert envia igualmente el formulario, no se podria hacer que no lo enviara?

El codigo me ha quedado así.

Código HTML:
 <script language="javascript">

	   function validar_campos()
	  {
	      if ((document.myform.licenseid.value=="") || (document.myform.licenseid.value==null))
	    {
	       document.myform.licenseid.focus();
	       alert ("Este campo és obligatorio.");
	       return false;
	    }
	   return true; 
	  }

	    function enviar()
	      { 

	        if (validar_campos())
	        {
	           document.myform.submit();     
	        }
	      }

	</script> 

<body>
<form action="llicencia.php" name="myform" method="post">
	<input type="text" required=”required” name="licenseid" class="text" id="llis" placeholder="Codi de llicència" value=""/>
	<input type="submit" class="submit" value="Entrar" onclick="enviar();"/>
</form> 
</body> 
En el caso de haver varios campos que sean imprescindibles se puede poner así?
o deveria hacer 2 funciones.

Código HTML:
 <script language="javascript">

	   function validar_campos()
	  {
	      if ((document.myform.licenseid.name.value=="") || (document.myform.licenseid.name.value==null))
	    {
	       document.myform.licenseid.name.focus();
	       alert ("Este campo és obligatorio.");
	       return false;
	    }
	   return true; 
	  }

	    function enviar()
	      { 

	        if (validar_campos())
	        {
	           document.myform.submit();     
	        }
	      }

	</script> 
El codigo de Hugo_Euan me sirve, pero no lo entiendo, así que prefiero este mas sencillo.

Muchas gracias

Última edición por lktmaster; 08/06/2011 a las 03:15
  #5 (permalink)  
Antiguo 08/06/2011, 08:34
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años
Puntos: 71
Respuesta: Campos imprescindibles

Que parte es la que no entiendes y tal vez te puedo ayudar explicandotela y orientandote =D
en el codigo que te mostre lo unico que hay que hacer es cambiar esta variable

var Fields = ['Nombre', 'Direccion', 'Edad', 'Mail', 'Pais', 'campo_N...'];

Nombre, Direccion, Edad.... etc son los id de los campos, substituyelos por los tuyos..

es decir si tines 3 campos por ejemplo quedaria así

var Fields = ['Nombre', 'Direccion', 'Edad'];

<input type="text" id="Nombre" />
<input type="text" id="Direccion" />
<input type="text" id="Edad" />


o si tienes mas no importa, basta con que incluyas los id a esta variable
var Fields = ['Nombre', 'Direccion', 'Edad'];

Saludos y Exito !! =D
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!
  #6 (permalink)  
Antiguo 08/06/2011, 23:09
 
Fecha de Ingreso: enero-2010
Mensajes: 63
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: Campos imprescindibles

lktmaster, estoy probando el código que tienes y me esta funcionando perfectamente.

ya lo probé en dos navegadores diferentes y funciona bien.

es decir, la validación no permite que se envíe el formulario vacío. solo se envia el formulario cuando el campo tenga una información.


para el caso de varios campos obligatorios se debe agregar un condicional if para cada campo dentro de la función validar_campos().

quedaría asi:

Código Javascript:
Ver original
  1. <script language="javascript">
  2.  
  3.    function validar_campos()
  4.   {
  5.       if ((document.myform.campo1.value=="") || (document.myform.campo1.value==null))
  6.     {
  7.        document.myform.campo1.focus();
  8.        alert ("campo 1 obligatorio...!!!");
  9.        return false;
  10.     }
  11.  
  12.  if ((document.myform.campo2.value=="") || (document.myform.campo2.value==null))
  13.     {
  14.        document.myform.campo2.focus();
  15.        alert ("campo 2 obligatorio...!!!");
  16.        return false;
  17.     }
  18.  
  19.    return true;
  20.   }
  21.      
  22.     function enviar()
  23.       {
  24.        
  25.         if (validar_campos())
  26.         {
  27.            document.myform.submit();    
  28.         }
  29.       }
  30.    
  31. </script>

de esta misma manera se puedan hacer otros tipos de validación, por ejemplo que un campo solo permita números, o solo letras, etc.

bueno espero que sirva

comenta como te fue

saludo!
  #7 (permalink)  
Antiguo 14/06/2011, 02:36
 
Fecha de Ingreso: enero-2011
Ubicación: Barcelona
Mensajes: 79
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: Campos imprescindibles

Muchas gracias por todo, en el firefox 3.6 de mac sigue enviando el formulario, pero si solo pasa en ese navegador voy a obviarlo.

lo de los 2 campos me funciona perfectamente. !!!!

Etiquetas: formulario
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 20:40.