hello à tous ,
bon en général je ne poste sur les forums que quand j'ai fais le tour des résolutions possibles, et là c'est le cas .
j'ai fais un formule basic, et j'avais besoin d'un select dynamique, qui selon la valeur d'un select de catégorie, m'afficherait des listes de sous catégories différentes, le select dynamique s'affiche bien sur la page une fois la catégorie sélectionné, mais ne passe pas au script action du formulaire (un formulaire d'upload).
le code de ma fonction :
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 function ajout(selection){ nb_select = selection.parentNode.getElementsByTagName("select").length; if ( selection == selection.parentNode.getElementsByTagName("select")[nb_select-1] ) { element_select = selection; selection = selection.options[selection.selectedIndex].value; if ( list_choix[selection] ) { new_liste = document.createElement("select"); element_select.parentNode.appendChild(new_liste); new_liste.setAttribute("id", "sous-cat"); new_liste.setAttribute("name", "sous-cat"); new_liste.onchange= function () {ajout(this) }; for (var i=0; i<list_choix[selection].length; i+=2) { new_option = document.createElement("option"); new_option.setAttribute("value", list_choix[selection][i]); new_option.text = list_choix[selection][i+1]; new_liste.appendChild(new_option); } } } else { selection.parentNode.removeChild(selection.nextSibling); ajout(selection); } if (list_choix[new_liste.options[0].value]) { ajout(new_liste) } }
et dans list_choix j'ai alterné value du select, et affichage du select ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 list_choix = { "cat1" : ["0","--","sous cat 1",......], etc etc }
et donc dans le premier select je fais un onchange="ajout(this)"
donc si quelques avec une piste ou une idée
ah oui, coté serveur j'ai un simple $_POST['sous-cat'];
merci à ceux qui liront jusque là
Partager