IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[PHP-JS] Cr�ation d'une liste d�roulante en javascript � partir d'un tableau php


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    31
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 31
    Par d�faut [PHP-JS] Cr�ation d'une liste d�roulante en javascript � partir d'un tableau php
    Bonjour,
    j'essaie de cr�er une liste d�roulante personnalis�e � partir d'un tableau que je remplis � l'aide d'une requ�te en php. Je me suis bas� sur la source "Conversion d'un tableau PHP de dimension N en tableau JavaScript" que j'ai adapt�e (et rectifi�e d'ailleurs). Voici mon code :

    - dans le head de la page :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
        <?php   // création du tableau JS à partir du tableau PHP
          $monTableauPHP = array("Plongee", "Planche");
          echo "<script type='text/javascript'>";
         construisTableauJS($monTableauPHP, "monTableauJS");
         echo "document.write(monTableauJS.toSource());";
         echo "</script> ";
        ?>
     
    	<SCRIPT language=javascript>	// Script création tableau
    	  <!--
    	    function CreeTableau()
    	    {
    	  	  this.length = CreeTableau.arguments.length
    	  	  for (var i = 0; i < this.length; i++)
    	  	  this[i+1] = CreeTableau.arguments[i]
    	    }
     
    	    var LibelleOption = new CreeTableau(monTableauJS);
     
    	    var CibleURL = new CreeTableau("plongee.html", "planche.html");
     
    	    function AllerA(form)
    	    {
    	  	  i = form.SelectMenu.selectedIndex;
    	  	  if (i == 0) return;
    	  	  parent.location.href = CibleURL[i+1];
    	    }
    	  // -->
    	</SCRIPT>
    - voici la fonction php construisTableauJS() que j'inclue � la page :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    <?php
    function construisTableauJS($tableauPHP, $nomTableauJS)
    {
       echo $nomTableauJS." = new Array();";
       for($i = 0; $i < count($tableauPHP); $i++)
       {
          if(!is_array($tableauPHP[$i]))
          {
             echo $nomTableauJS."[".$i."] = '".$tableauPHP[$i]."';";
          }
          else
          {
             construisTableauJS($tableauPHP[$i], $nomTableauJS."[".$i."]");
          }
       }
       return;
    }
    ?>
    - et dans le head de la page :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <SCRIPT>
    	document.write("<FORM>");
    	document.write("<SELECT NAME='SelectMenu' onChange='AllerA(this.form)'>");
    	Nombre = LibelleOption.length;
    	for (var i = 1; i <= Nombre; i++)
    	document.write("<OPTION>" +LibelleOption[i]);
    	document.write('</SELECT>');
    	document.write('</FORM>');
    // -->
    </SCRIPT>
    Le probl�me c'est que la liste d�roulante cr�ee poss�de un seul choix et c'est "Plongee,Planche" alors que je voudrai 2 champs "Plongee" et "Planche".

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    31
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 31
    Par d�faut
    Le dernier code se trouve dans le <body> pas dans le <head>.

Discussions similaires

  1. R�ponses: 0
    Dernier message: 05/06/2012, 13h13
  2. R�ponses: 11
    Dernier message: 11/03/2008, 09h35
  3. R�ponses: 4
    Dernier message: 21/09/2006, 14h58
  4. [PHP-JS] changement d'une liste d�roulante
    Par maraly dans le forum Langage
    R�ponses: 4
    Dernier message: 03/08/2006, 14h53
  5. R�ponses: 5
    Dernier message: 13/10/2005, 10h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo