Bonjour, voila tout est dans le titre, je voudrais récupérer la valeur d'un option select par exemple, j'ai ma page panier, et lorsque je change la valeur de mon select, la valeur est récupéré dans une variable.
Merci
Version imprimable
Bonjour, voila tout est dans le titre, je voudrais récupérer la valeur d'un option select par exemple, j'ai ma page panier, et lorsque je change la valeur de mon select, la valeur est récupéré dans une variable.
Merci
Bonjour,
+1 E.Bzz
Ou bien :
C'est plus cross-browserCode:document.getElementById('id_du_select').options[document.getElementById('id_du_select').selectedIndex]value
et la FAQ ????
http://javascript.developpez.com/faq/?page=formChamps
Je n'ai pas dit qu'il n'y avait pas la réponse.
Seulement qu'elle était incomplète : il n'y a qu'une des syntaxes possibles ...
A+
Oui !
Mais eût-il consulté la FAQ auparavant que ce post n'aurait pas existé ;)
merci pour les liens, mais est-il possible de faire ça :
pour pouvoir utiliser la valeur en php ?Code:
1
2 $zone_pays = 'document.getElementById("pays").options[document.getElementById("pays").selectedIndex].value';
Merci
Non, pour pouvoir l'utiliser en PHP, il faut que tu envoies le choix de l'utilisateur au serveur.
Soit en soumettant un form, soit en passant par Ajax ...
A+
javascript ne comprend pas le php et php ne comprend pas le javascript
imagine que ce sont deux langue différente parlées dans deux pièces différentes ...
Tu auras beau cirer du php aussi fort que tu veux dans la pièce javascript (coté client) il ne se passera rien
ok, je commence à comprendre, par contre, même en rechargeant la page, je ne vois pas comment donner la nouvelle valeur au select et surtout comment récupérer l'index par exemple dans une variable. Si quelqu'un aurais un petit script svp, je suis pas très doué en Javascript. Merci d'avance
une piste ...
php ne fait que rediger le html
un simple teste coté php et tu ecris le code htmllà ou il faut ;)Code:selected="selected"
Code PHP :
Code HTML généréCode:$buffer ='<option name = "pays" selected="selected" value="'.$id.'" >'.$texte.'</option>';
javasrcipt:Code:<select name="country_id" id="country_id" onchange="changePays(document.forms['frmPanier'])"return false;" style="width:150px;"><option name = "pays" value="1" >France Métropolitaine</option><option name = "pays" value="2" >Monaco</option><option name = "pays" value="4" >Allemagne</option><option name = "pays" value="5" >Autriche</option><option name = "pays" value="6" ></select>
Il me recharge bien ma page seulement, il me laisse toujours le dernier enregistrement de la table en selectedCode:
1
2
3
4
5
6 function changePays(form) { form.action = "panier.php?update=1"; form.submit(); }
Oui, mais avec le code généré, tu vois bien que :
- Dans le onchange, il y a un problème dans les quottes (") lors de la génération ainsi qu'un ";" manquant
- Tu n'as pas le selected="selected" dans les lignes générées : ton test PHP ne doit pas fonctionner
A+
Après modif ...Code:<select name="country_id" id="country_id" onchange="changePays(document.forms['frmPanier']);" style="width:150px;"><option name = "pays" selected="selected" value="1" >France Métropolitaine</option><option name = "pays" selected="selected" value="2" >Monaco</option><option name = "pays" selected="selected" value="4" >Allemagne</option><option name = "pays" selected="selected" value="5" >Autriche</option><option name = "pays" selected="selected" value="6" >Danemark</option><option name = "pays" selected="selected" value="7" >Espagne</option></select>
Plus de problème de syntaxe, mais ton selected="selected" est présent sur toutes les lignes : ton test PHP ne fonctionne toujours pas.
Par contre, tu peux enlever le name des options : ça ne sert pas ;)
A+
Une question certainement bête : pourquoi gérer un onchange sur le select ?
Il suffirait de récupérer (côté PHP) la value du select quand tu traites ton form (sous réserve qu'il soit inclus dans le formulaire) ...
A+