Problème de création de liste déroulante JS

Fermé
boup' Messages postés 4 Date d'inscription vendredi 22 mai 2009 Statut Membre Dernière intervention 23 mai 2009 - 22 mai 2009 à 23:45
boup' Messages postés 4 Date d'inscription vendredi 22 mai 2009 Statut Membre Dernière intervention 23 mai 2009 - 23 mai 2009 à 00:37
Bonjour, excusez moi de vous déranger Mais je suis débutant en Javascript et je recherche à créer dynamiquement des listes déroulantes à partir d'un bouton et alimenter mes options et leurs values grâce à ma base de donnée.

Je suis partit de plusieurs script pour essayer d'obtenir un résultat mais sans succès =(

Je vous donne mon code qui est incomplet vu que je suis bloqué au niveau de mes options :



<html>
   <head>
      <title>ajout de liste déroulante</title>
      <script type="text/javascript">
          var compteur = 0;
         function ajouter(){
            // Je récupère le fieldset
            var conteneur   = document.getElementById('fichiers');
            compteur++;
            // Je crée les éléments que j'ai besoin :
            var div = document.createElement('div');
            var select = document.createElement('select');
            var option = document.createElement('option');

            // J'attribue des valeurs à se que j'ai créé:
            select.name   = 'acteur[]';

            // c'est la que j'ai un problème =( 
            // comment puis-je donné une value alimentée par ma base de donnée à mon option  ?

            // J'applique les élément que j'ai créé
            div.appendChild(select);
            div.appendChild(option);




            // Ajout du div :
            conteneur.appendChild(div);

            // récupération du nombre de liste généré pour l'enregistrement 
            document.forms["formulaire"].elements['cache'].value=compteur;
         }
         
      </script>
   </head>
   <body>
      <form name="formulaire" action='traitement.php' method='post'>
         <fieldset id='fichiers'>
            <legend>Fichiers</legend>
            <input type='button' value='Ajouter un fichier' onclick='ajouter()' /><br />
         </fieldset>
       <input type="hidden" name="cache" />
       <input type='submit' value='enregistrer'/>  
      </form>
   </body>
</html>


Pour avoir un exemple précis de se que je désire avoir comme résultat en html :

<select name="acteur[]">
        <option value ="id_acteur">nom_acteur</option>
</select>


je n'ai pas mis de php .. mais id_acteur et nom_acteur sont alimenter dans mon code grâce à ma base de donnée c'est juste pour vous donné un exemple plus ou moins précis du résultat voulu

si quelqu'un peut m'éclairer sur le sujet ça m'aiderais énormément =)

merci beaucoup et bonne soirée =)
A voir également:

4 réponses

dodoecchi Messages postés 454 Date d'inscription samedi 9 septembre 2006 Statut Membre Dernière intervention 26 avril 2012 29
22 mai 2009 à 23:56
soit tu charges les données de ta base de donnée avant la liste, tu injectes pendant sa création : programmation côté serveur tel que php
soit tu va chercher dynamiquement : ajax (du javascript en gros) + encore un script côté serveur

tu peux pas manipuler les bases de données en javascript, que celà soit bien clair :)
0
boup' Messages postés 4 Date d'inscription vendredi 22 mai 2009 Statut Membre Dernière intervention 23 mai 2009
23 mai 2009 à 00:06
je veux juste savoir comment je peu attribuer une value à l'option que je viens de créé en javascript

se que j'ai besoin c'est d'avoir se résultat la en html:

<select>
  <option value="[ 1er élément qui me manque]">[2ième élément qui me manque]</option>
</select>
0
dodoecchi Messages postés 454 Date d'inscription samedi 9 septembre 2006 Statut Membre Dernière intervention 26 avril 2012 29
23 mai 2009 à 00:10
paramètres dans ta fonction
function (param1, param2)
{
document.nom_du_formulaire.nom_de_l'option.value = param1;
et après pareil avec .innerHTML = param2;
}

un truc comme ça tu veux?
0
boup' Messages postés 4 Date d'inscription vendredi 22 mai 2009 Statut Membre Dernière intervention 23 mai 2009
23 mai 2009 à 00:24
quand je lance ma page html

j'ai un fieldset avec un bouton" ajouter un fichier"
quand je clique dessus j'obtien une ou plusieurs liste(s) déroulante(s) mais elle(s) est(sont) vide =(

comment je peux faire, dans le code que j'ai écrit au dessus, pour leurs attribuer une value ?

pour obtenir en html quand je clique sur le bouton" ajouter un fichier" une liste déroulante comme celle ci dessous

<select name="acteur[]">
<option value ="1">blablabla</option>
<option value ="2">gnagnagna</option>
</select>
0
dodoecchi Messages postés 454 Date d'inscription samedi 9 septembre 2006 Statut Membre Dernière intervention 26 avril 2012 29
23 mai 2009 à 00:30
pourquoi faire complexe quand on peut faire simple??
non mais...

si l'utilisateur de ta page cliques sur le bouton, il clique. point barre.
donc il n'y a aucun raison de modifier à ce moment précis le contenu des tes listes avec du javascript
tu le prévois à l'avance, t'a qu'a le mettre dans un div invisible que tu affichera ensuite

j'ai aidé qqun pour afficher/masquer un div :
http://www.commentcamarche.net/forum/affich 12569792 petite aide javascript svp?#1

Dorian
0
boup' Messages postés 4 Date d'inscription vendredi 22 mai 2009 Statut Membre Dernière intervention 23 mai 2009
23 mai 2009 à 00:37
ok =) je vais envisager une autre solution pour mes listes

Merci pour ton aide =)
0