• Publicidad

uso onchange

Discute todo acerca de JavaScript así como DHTML o la tecnología AJAX.

uso onchange

Notapor marcosss » 2007-06-07 10:23 @474

Hola, estoy programando en php y javascript y tengo un problemilla, tengo que usar 2 onchange con un mismo select y no sé cómo es. El código e el siguiente:

- Este es el select, y dependiendo de la opción que elija el usuario deberá mostrar después los 2 fieldset que vienen a continuación:

Código: Seleccionar todo
<select name="cUnidadE" onchange="chgDC(this)" onchange="chgCFGM(this)">';
   while ($fila1= mysql_fetch_assoc($result1)){
  echo '<option value='.$fila1['nUnidad'].'>'.$fila1['nombreUnidad'].'</option>';
   }
echo '</select>


- El primer fieldset es:

Código: Seleccionar todo
&nbsp&nbsp <fieldset  size="10" style="display:block" id="fs0"><p><legend>Matriculación</legend></p><p></p><label>
    <input type="radio" name="cPorModulos" value="1">Matriculación completa</label>&nbsp&nbsp<label>
    <input type="radio" name="cPorModulos" value="0">Matriculación por módulos</label><br>
   </fieldset>';


Este fieldset me funcionaba bien hasta que introduje el 2º fieldset y el segundo onchange.

- El segundo fieldset es:
Código: Seleccionar todo
echo'<fieldset  size="10" style="display:block" id="fs1">';
   //Listo las unidades que son CFGM o PCPI (educación) o DC
   $sql1 = "select * from unidades as U, estudios as E, nombreEstudios as NE where (((U.codigoSeccion=E.codigoSeccion) && (U.codigoCurso=E.codigoCurso) && (NE.codigoSeccion=E.codigoSeccion)) && ((NE.nombreSeccion='PCPI') || (NE.nombreSeccion='PGS') || (NE.nombreSeccion='CFGM') || (NE.nombreSeccion='DC')))";
   $result1 = mysql_query($sql1, $GLOBALS["miConexion"]) or die(mysql_error());
echo'
   &nbsp&nbsp Grupo de referencia: <select name="cGrupoReferencia">';
   while ($fila1= mysql_fetch_assoc($result1)){
  echo '<option value='.$fila1['nUnidad'].'>'.$fila1['nombreUnidad'].'</option>';
   }
echo '</select>

   &nbsp&nbsp Parte práctica: <select name="cPartePractica">';
    echo '<option value="--">--</option>';
     echo '<option value="Automoción">Automoción</option>';
     echo '<option value="Confección">Confección</option>';
     echo '<option value="Oficina">Oficina</option>';
echo '</select>';
echo'</fieldset>';


- Y el código javascript es:


Código: Seleccionar todo
//Esta función sirve para ocultar 'por módulos' si la unidad que elige el usuario no es un CFGM
echo'<script>';
echo'function chgCFGM(o){
      var n=o.value;';
     while ($fila1= mysql_fetch_assoc($result1))
        echo'document.getElementById("fs0").style.display=(n=='.$fila1['nUnidad'].'?"block":"none");';
echo'}';
echo'</script>';


- La segunda función javascript:

Código: Seleccionar todo
//Esta función sirve para ocultar los datos de DC
echo'<script>';
echo'function chgDC(o){
      var n=o.value;';
     while ($fila1= mysql_fetch_assoc($result1))
        echo'document.getElementById("fs1").style.display=(n=='.$fila1['nUnidad'].'?"block":"none");';
echo'}';
echo'</script>';




Y no sé porqué no me funciona, cuando tenía sólo el primer fieldset y el primer onchange me funcionaba bien, pero al introducir el segundo, el primero sigue funcionando, pero el segundo ya no me funciona.

A ver si me podéis echar una mano....Muchas gracias
marcosss
Perlero nuevo
Perlero nuevo
 
Mensajes: 87
Registrado: 2007-05-14 06:23 @307

Publicidad

Volver a JavaScript

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados