Bonjour tout le monde .
imaginons que j'ai ce genre de form :

<form method="post" action="test.php">
    <select id="sel">
        <option value="1" selected="selected">Valeur 1</option>
        <option value="2">Valeur 2</option>
        <option value="3">Valeur 3</option>
        <option value="4">Valeur 4</option>
    </select>
    <input type="submit" value="Tester" />
</form> 

je voulais par la suite ; ajouter d'autre option à partir d'un code javascript .
j'ai avais essayé ceci mais ça ne marche pas :

 function ajoutCategorie(){         
            var x = document.getElementById("sel");
            var option = document.createElement("option");
            option.text = "ValeurCategorie";
            x.add(option);
          } 

Est -ce que quelqu'un pourait m'aider , s'il vous plait .

4 réponses


Bonjour,

je viens de tester ton code qui fonctionne correctement dans mon navigateur, es tu sûr que ton code javascript est bien appelé uniquement une fois que ta page a fini de charger ?
Je pose cette question dans le doute, tu définis dans ton code une fonction pour effectuer une action mais est ce que tu appelles bien cette fonction ensuite ?

J'espère que ca t'aidera.

Salut,

Ton code fonctionne probablement, mais il manque l'attribut 'value' sur l'option que tu rajoutes.
Ah et ce n'est pas x.add(option); mais x.appendChild(option); (je crois).

Avec juste x.add(option) ; ça marche mais quant je reouvre la page , ça disparait . Finalement je vais le faire avec une base de donnee . je sais pas si c'est pratique ou pas , mais ça me semble facil . Merci les gars ! et desolé pour le retard

euh du moment que c'est du js ( côté client ) dès que tu recharges ta page forcément ça disparait ! ^^
Il te faut combiner php + js = AJAX ( entre autre solution )