• Publicidad

¿Se pueden crear 2 DynamicOptionList en la misma página??

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

¿Se pueden crear 2 DynamicOptionList en la misma página??

Notapor marcosss » 2007-05-16 14:10 @632

Hola, estoy trabajando con PHP y Javascript y tengo 1 problemilla: me hace falta usar 2 DynamicOptionList y me ocurre una cosa curiosa; me funcionan por separado (es decir, con uno de los 2 comentados) pero no me funciona cuando están juntos (sin comentar ninguno). Lo que hago es que dependiendo de la unidad que elija el usuario tienen que actualizarse el curso académico y el área. El código es el siguiente:

Las variables $arrayCursoAcadCFGM, PGS, FPO, $arrayUnidadCFGM, PGS, FPO, $arrayUnidadPGSA, $arrayAreaPGS... tienen los valores correctos, lo he comprobado.

Código: Seleccionar todo
....PHP.....
<body onLoad="initDynamicOptionLists()">


echo'<script type="text/javascript" src="dynamicoptionlist.js"></script>';


 //Creo la dependencia entre una unidad y un curso académico
echo'<script type="text/javascript">';
echo'var unidadCursoAcad = new DynamicOptionList();';
echo'unidadCursoAcad.addDependentFields("unidadProfesor","cursoAcadProfesor");';





for($i=1; $i <= count($arrayUnidadCFGM); $i++)
      for($j=1;$j <= count($arrayCursoAcadCFGM[$i]); $j++)
echo'        unidadCursoAcad.forValue("'.$arrayUnidadCFGM[$i].'").addOptions("'.$arrayCursoAcadCFGM[$i][$j].'");';
for($i=1; $i <= count($arrayUnidadFPO); $i++)
      for($j=1;$j <= count($arrayCursoAcadFPO[$i]); $j++)
echo'        unidadCursoAcad.forValue("'.$arrayUnidadFPO[$i].'").addOptions("'.$arrayCursoAcadFPO[$i][$j].'");';
for($i=1; $i <= count($arrayUnidadPGS); $i++)
      for($j=1;$j <= count($arrayCursoAcadPGS[$i]); $j++)
echo'        unidadCursoAcad.forValue("'.$arrayUnidadPGS[$i].'").addOptions("'.$arrayCursoAcadPGS[$i][$j].'");';


echo'unidadCursoAcad.selectFirstOption = false;';
echo'</script>';



echo'

Unidad :
      <select name="unidadProfesor">';
        echo'<option selected="selected" value="'.$arrayUnidadCFGM[1].'">'.$arrayUnidadCFGM[1].'</option>';      
        for ($k=2;$k<=count($arrayUnidadCFGM);$k++)   
              echo'<option value="'.$arrayUnidadCFGM[$k].'">'.$arrayUnidadCFGM[$k].'</option>';      
        for ($k=1;$k<=count($arrayUnidadFPO);$k++)   
              echo'<option value="'.$arrayUnidadFPO[$k].'">'.$arrayUnidadFPO[$k].'</option>';
        for ($k=1;$k<=count($arrayUnidadPGS);$k++)   
              echo'<option value="'.$arrayUnidadPGS[$k].'">'.$arrayUnidadPGS[$k].'</option>';      
 
      echo'
      </select>';


 
 

echo' &nbsp;&nbsp;&nbsp;&nbsp;Curso académico :
      <select name="cursoAcadProfesor">';
echo'      <script type="text/javascript">unidadCursoAcad.printOptions("cursoAcadProfesor")</script>';
      echo'
      </select>';
 


 
 
//Creo l dependencia entre una unidad y un área

echo'<script type="text/javascript">';
echo'var unidadArea = new DynamicOptionList();';
echo'unidadArea.addDependentFields("unidadProfesor","areaProfesor");';
for($i=1; $i <= count($arrayUnidadPGSA); $i++)
      for($j=1;$j <= count($arrayAreaPGS[$i]); $j++)
echo'        unidadArea.forValue("'.$arrayUnidadPGSA[$i].'").addOptions("'.$arrayAreaPGS[$i][$j].'");';
echo'unidadArea.selectFirstOption = false;';
echo'</script>';



 echo'
 
  &nbsp;&nbsp;&nbsp;&nbsp; Área :
      <select name="areaProfesor">';
      echo'      <script type="text/javascript">unidadArea.printOptions("areaProfesor")</script>';
      echo'</select>';


....... PHP ........


Y ahora mismo el resultado que daría es:
- En unidad da el resultado correcto, muestra las unidades.
- En cursoAcademico NO sale lo correcto, sale el área, pero al crear la dependencia los arrays que contenían los datos del curso académico contenían los datos correctos.
- En área sale el resultado correcto.

Si pudieseis ayudarme porque estoy perdido.

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 5 invitados

cron