Foros del Web » Programando para Internet » Javascript »

validacion de formulario

Estas en el tema de validacion de formulario en el foro de Javascript en Foros del Web. Hola a todos tengo un problema con la validacion de un formulario, solo me valida el primer elemento y el resto ni los toca, y ...
  #1 (permalink)  
Antiguo 12/07/2011, 12:27
 
Fecha de Ingreso: noviembre-2008
Mensajes: 19
Antigüedad: 15 años, 5 meses
Puntos: 0
validacion de formulario

Hola a todos
tengo un problema con la validacion de un formulario, solo me valida el primer elemento y el resto ni los toca, y tampoco envia el formulario.

pongo el codigo html
Código HTML:
<form name="form1" method="post" action="<?php echo $url ?>">
  <table width="60%" border="0" class="parrafo">
    <tr>
      <td width="24%">Capitulo</td>
      <td width="76%">&nbsp;</td>
    </tr>
    <tr>
      <td colspan="2"><select name="capitulos" size="1" id="capitulos"
	  onChange="peticion('busca_ciexgrp.php','&capitulo='+this.value,'div_grupo')">
        <option value="0">Seleccionar</option>
        <?php
		for ($i=0;$i<$n;$i++) {
			$codigo	= mysql_result($rs,$i,'id_cxcap');
			$des	= substr(mysql_result($rs,$i,'des_cxcap'),0,110);
		?>
        <option value="<?php echo $codigo ?>"><?php echo $des?> </option>
        <?php } ?>
      </select></td>
    </tr>
    <tr>
      <td>Grupo</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td colspan="2"><div id="div_grupo">
	  <select name="grupo" id="grupo">
      </select></div> </td>
    </tr>
    <tr>
      <td>Sub Grupo </td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td colspan="2"><div id="div_subgrupo">
	  <select name="subgrupo" id="subgrupo">
      </select></div></td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td>Categoria</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td colspan="2"><div id="div_categoria">
	  <select name="categoria" id="categoria">
      </select></div> </td>
    </tr>
    <tr>
      <td>Sub Categoria</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td colspan="2"><div id="div_subcategoria">
	  <select name="subcategoria" id="subcategoria">
      </select></div> </td>
    </tr>
  </table>
  <input type="button" name="Submit" value="Aceptar" onClick="valida_envia()">
  <a href="busca_ciex_avanzado.php">Busqueda Avanzada</a>
</form> 
aqui el codigo Javascript

Código:
<script language="javascript" type="text/javascript">

function valida_envia(){

    //valida capitulos (select )  
	if (document.getElementById('capitulos').selectedIndex==0){
      alert("Debe seleccionar un Capitulo.");
      document.getElementById('puntos').focus();
       return false;
    }

    //valida grupo (select )  
	if (document.getElementById('grupo').selectedIndex==0){
       alert("Debe seleccionar un Grupo.");
       document.getElementById('grupo').focus();
       return false;
    }

    //valida Subgrupo (select )  
	if (document.getElementById('subgrupo').selectedIndex==0){
	   alert("Debe seleccionar un Sub Grupo.");
       document.getElementById('subgrupo').focus();
		return false;
    }

    //valida categoria (select )  
	if (document.getElementById('categoria').selectedIndex==0){
       alert("Debe seleccionar una Categoria.");
       document.getElementById('categoria').focus();
       return false;
    }

    //valida subcategoria (select )  
	if (document.getElementById('subcategoria').selectedIndex==0){
       alert("Debe seleccionar una Sub Categoria.");
       document.getElementById('subcategoria').focus();
       return false;
    }

	document.form1.submit();
}
</script>
Por que solo me valida el primer select y los otros no, tiene algo que ver que a partir del segundo select esten en un DIV?

Gracias por la ayuda
  #2 (permalink)  
Antiguo 12/07/2011, 13:07
Avatar de jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 4 meses
Puntos: 43
Respuesta: validacion de formulario

Hola xmandbz !

Lo que está pasando es que en las cajas de selección no tienes opciones, al no tener opciones la propiedad selectedIndex regresa el valor -1.

Tendrías que modificar tus condicionales para que funcione correctamente.

Un saludo y suerte !
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.
  #3 (permalink)  
Antiguo 12/07/2011, 13:38
 
Fecha de Ingreso: noviembre-2008
Mensajes: 19
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: validacion de formulario

Hola
Gracias por responder

Los contenidos de los select se cargan dinamicamente mediante Ajax
son varios select dependientes...
  #4 (permalink)  
Antiguo 14/07/2011, 09:40
 
Fecha de Ingreso: noviembre-2008
Mensajes: 19
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: validacion de formulario

Esta resuelto

El problema estaba en que el "name" de los select en los archivos php que cargaba mediante el Ajax no eran iguales al "name" de los select que los recibia en el archivo principal que esta al inicio de este mensaje.

Pequeños errores que a veces cuesta detectar.

Gracias por la respuesta.

Etiquetas: validar-campos, 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 03:19.