Problème de création de liste déroulante JS
boup'
Messages postés
4
Statut
Membre
-
boup' Messages postés 4 Statut Membre -
boup' Messages postés 4 Statut Membre -
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 :
Pour avoir un exemple précis de se que je désire avoir comme résultat en html :
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 =)
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 =)
Configuration: Windows XP Firefox 3.0.10
4 réponses
-
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 :) -
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>
-
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?-
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>
-
-
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