Bonjour a tous,
J'ai un problème pour lequel je tourne en rond depuis quelques jours,
J'ai actuellement un select multiple :
Ce sélect me permet évidemment de sélectionner plusieurs options, pas en les surlignant mais en les ajoutant dans un input au dessus (oui je sais c'est bizarre :-D), mais c'est un Dropdown Multiple Select
Ensuite j'attribue une action onchange :
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <select id="chgut[]" name="chgut[]" multiple="multiple" class="form-control search-select" onchange="recupSelection(this,1,0,1)"> <option value="A">Alabama</option> <option value="AR">Arizona</option> <option value="CA">California</option> <option value="CO">Colorado</option> </select>
Ma fonction recupSelection
J'ai tenté de comprendre comment fonctionnait le meme type de traitement mais avec des checkbox a la place d'un select :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 function recupSelection(idA,client,trian,idB) { var idC = idA.options[idA.selectedIndex].value; var xhr_object = new XMLHttpRequest(); xhr_object.open("POST", "sauve_gestion.php", true); xhr_object.onreadystatechange = function() {if(xhr_object.readyState == 4) {}} xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); var data = "client="+client+"&trian="+trian+"&idGEST="+idC; xhr_object.send(data); }
Évidemment cela de fonctionne pas a partir d'un SELECT :-D
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 function recupSelection(id_class,client,trian,idB) { var elts = document.querySelectorAll(id_class); alert ("elts "+elts) var i = 0; var array_val = []; // array elts.forEach(function(id) { if (id.checked) { array_val[i] = id.value; // on récupère les value des cases cochées i++; } }); var liste_val = encodeURIComponent((array_val.length > 0) ? JSON.stringify(array_val) : ""); // liste au format JSON var xhr_object = new XMLHttpRequest(); xhr_object.open("GET", "sauve_gestion.php?client="+client+"&trian="+trian+"&liste="+liste_val, true); xhr_object.onreadystatechange = function() {if(xhr_object.readyState == 4) {console.log ("relance_sms.php?sms="+sms+"&liste="+liste_val);}} var data = "client="+client+"&trian="+trian+"&liste="+liste_val; xhr_object.send(null); }
Le but étant de sélectionner plusieurs noms dans le select et d'envoyer ensuite la liste des values correspondante via javascript..
Certainement que comme avec les checkbox je devrai récupérer en json le traitement php final.
J'ai tenté également de m'inspirer de cette solution : https://www.developpez.net/forums/d1...e-additionner/
Ensuite j'ai tenté de mettre : <select id="chgut[]" name="chgut[]" multiple="multiple" class="form-control search-select" onchange="alert(this.value);"> pour voir le résultat et il me renvoi toujours la valeur du premier choix, jamais les autres pays que je rajoute.
Mais mon problème est qu'avec un affichage des sélections en tête du select, et non parmi les options, cela ne marche pas, voir image de la tête du select :
Merci pour votre aide.
Olivier
Partager