Foros del Web » Programando para Internet » Javascript »

validar campos vacios, continua de pagina

Estas en el tema de validar campos vacios, continua de pagina en el foro de Javascript en Foros del Web. Estoy tratando de validar ingresos con javascript. Si no se ingresa nada en el formulario, al presionar el botón no debiera continuar con la pagina, ...
  #1 (permalink)  
Antiguo 28/03/2012, 13:51
 
Fecha de Ingreso: octubre-2011
Mensajes: 153
Antigüedad: 12 años, 5 meses
Puntos: 7
validar campos vacios, continua de pagina

Estoy tratando de validar ingresos con javascript.

Si no se ingresa nada en el formulario, al presionar el botón no debiera continuar con la pagina, pero si lo hace.

PHP con Javascript

Acá tengo un vídeo en flash para que lo vean
http://sunsalt.netai.net/files/validacion_sigue.htm

acá tengo la pagina toda esta en html:

Código HTML:
Ver original
  1. function comprobar(){
  2.     var mal=false;
  3.    
  4.     numero=document.forms[0].elements.length;
  5.    
  6.     for(a=0;a<numero;a++){
  7.         if (document.forms[0].elements[a].value==""){
  8.             document.forms[0].elements[a].style.backgroundColor="#ffffcc";
  9.             mal=true;
  10.         }
  11.         else{
  12.             document.forms[0].elements[a].style.backgroundColor="white";
  13.         }
  14.     }
  15.    
  16.     if(mal){
  17.         alert("Por favor, rellene las cajas coloreadas");
  18.     }
  19.         else{document.forms[0].submit()}
  20.     }
  21. </script>
  22.  
  23.  
  24.  
  25. <form action="ingresar1.php" method="post">
  26.   <p>&nbsp;</p>
  27.   <table width="330" border="0" cellspacing="3" cellpadding="3">
  28.     <tr>
  29.       <th width="94" scope="col">&nbsp;</th>
  30.       <th width="223" scope="col">&nbsp;</th>
  31.     </tr>
  32.     <tr>
  33.       <td>Nick:</td>
  34.       <td><input type="text" name="textnick"></td>
  35.     </tr>
  36.     <tr>
  37.       <td>Clave:</td>
  38.       <td><input type="text" name="txtclave1"></td>
  39.     </tr>
  40.     <tr>
  41.       <td>Repetir clave :</td>
  42.       <td><input type="text" name="txtclave2"></td>
  43.     </tr>
  44.     <tr>
  45.       <td>Nivel:</td>
  46.       <td><select name="select">
  47.         <option value="1">Basico</option>
  48.         <option value="2">Admin</option>
  49.       </select></td>
  50.     </tr>
  51.     <tr>
  52.       <td>&nbsp;</td>
  53.       <td><input type="submit" name="Submit" onclick="comprobar()" value="Ingresar"></td>
  54.     </tr>
  55.   </table>
  56.   <p>&nbsp;</p>
  57. </form>
__________________
Mi mail: [email protected]
  #2 (permalink)  
Antiguo 28/03/2012, 17:21
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: validar campos vacios, continua de pagina

Sin entrar a analizar detalles de la validación, que no es correcta (podrían pasarte espacios en blanco en los campos y validaría correctamente, consultá como hacer trim() con javascript). El método que estás usando para llamar la función, no es el indicado
Lee
http://www.forosdelweb.com/f13/docum...0/#post4151210

tendrías que tener algo como esto
Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <title>titulo</title>
  4. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  5.  
  6.  
  7. function comprobar(){
  8.     var mal=false;
  9.    
  10.     numero=document.forms[0].elements.length;
  11.    
  12.     for(a=0;a<numero;a++){
  13.        if (document.forms[0].elements[a].value==""){
  14.            document.forms[0].elements[a].style.backgroundColor="#ffffcc";
  15.            mal=true;
  16.        }
  17.        else{
  18.            document.forms[0].elements[a].style.backgroundColor="white";
  19.        }
  20.    }
  21.    
  22.    if(mal){
  23.        alert("Por favor, rellene las cajas coloreadas");
  24.        return false;
  25.    }
  26.        else{document.forms[0].submit()}
  27.    }
  28.  
  29. </head>
  30.  
  31.  
  32.  
  33.  
  34.  
  35. <form action="ingresar1.php" method="post" onsubmit="return comprobar();" >
  36.   <p>&nbsp;</p>
  37.   <table width="330" border="0" cellspacing="3" cellpadding="3">
  38.     <tr>
  39.       <th width="94" scope="col">&nbsp;</th>
  40.       <th width="223" scope="col">&nbsp;</th>
  41.     </tr>
  42.     <tr>
  43.       <td>Nick:</td>
  44.       <td><input type="text" name="textnick"></td>
  45.     </tr>
  46.     <tr>
  47.       <td>Clave:</td>
  48.       <td><input type="text" name="txtclave1"></td>
  49.     </tr>
  50.     <tr>
  51.       <td>Repetir clave :</td>
  52.       <td><input type="text" name="txtclave2"></td>
  53.     </tr>
  54.     <tr>
  55.       <td>Nivel:</td>
  56.       <td><select name="select">
  57.         <option value="1">Basico</option>
  58.         <option value="2">Admin</option>
  59.       </select></td>
  60.     </tr>
  61.     <tr>
  62.       <td>&nbsp;</td>
  63.       <td><input type="submit" name="Submit" value="Ingresar"></td>
  64.     </tr>
  65.   </table>
  66.   <p>&nbsp;</p>
  67. </form>
  68.  
  69.  
  70. </body>
  71. </html>

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: campos, formulario, html, input, php, vacios
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 18:33.