11548 sujets

JavaScript, DOM et API Web HTML5

Bien le bonjour,

Petite galère :x
J'ai récupéré un code permetant de modifier le contenu de 2 listes avec des boutons "ajouter/enlever" ... jusque-là, classique me direz-vous !

Maintenant, je voudrai que le contenu de mes listes soit le résultat de 2 requêtes sql ... ce qui fonctionne, partiellement (pour la 1ère liste) ... et c'est là que je ne comprend plus étant donné que j'ai la même structure de code d'une liste à l'autre en changeant le nom des variables dans les boucles PHP.

J'ai posté dans le forum JavaScript car je vois plus ça du côté de JS que PHP, puisqu'après plusieurs tests, mes tableaux provenant de mes requêtes php sont OK.
Et comme c'est la seconde liste (celle qui est sensée recevoir les ajouts de la 1ère) qui ne fonctionne pas, je verrais bien un p'ti truc de JS ??

le script JS :

<SCRIPT LANGUAGE="JavaScript">
function Deplacer(l1,l2) {
     if (l1.options.selectedIndex>=0)
          {
          o=new Option(l1.options[l1.options.selectedIndex].text,l1.options[l1.options.selectedIndex].value);
          l2.options[l2.options.length]=o;
          l1.options[l1.options.selectedIndex]=null;
          }
     else
          {
          alert("Aucune activité sélectionnée");
          }
     }
</SCRIPT>


l'appel au script

<FORM name="formulaire">
   <TABLE>
      <TR>
         <TD align="center">
            <B><FONT size="2">Liste 1</FONT></B><BR>
            <SELECT align="top" name="liste1" size="15"  style="width:120px">
               <?php
                  do
                     {
                      if (!empty($var_tableau))
                        {
                         echo '<OPTION value="'.$var_tableau.'">'.$var_tableau.'</OPTION>';
                         }
                      } while ($nom_tableau = mysql_fetch_assoc($execution_requete));
                ?>
             </SELECT>
          </TD>
          <TD align="center">
	     <INPUT type="button" value="Ajouter >>>" onClick="Deplacer(this.form.liste1,this.form.liste2)">
	     <BR>
	     <INPUT type="button" value="&lt;&lt;&lt; Enlever" onClick="Deplacer(this.form.liste2,this.form.liste1)">
	  </TD>
	  <TD align="center">
	     <FONT size="2"><B>Liste 2</B></FONT><BR>
	     <SELECT align="top" name="liste2" size="6" style="width:120px">
	     </SELECT>
          </TD>
       </TR>
   </TABLE>
</FORM>

La boucle DO dans le premier <SELECT> fonctionne !
Si je mets la même boucle avec un autre tableau de valeur (testé non vide) dans la seconde liste, ça ne fonctionne pas Smiley confus

Please Hellp Smiley smile