Passage en paramètre mode GET valeur combobox

Eléphanteau du PHP | 43 Messages

18 janv. 2007, 16:27

Bonjour,

Je dois adapter un formulaire existant et depuis ce matin je sèche même si je suis sur que la solution est simple.
Voilà, je dois passer via une URL (méthode GET) la valeur sélectionnée d'une combobox.

Code : Tout sélectionner

<form method="get" action="javascript:lien('espace/listearticle 1')"> <label for="nbLigneParPage" title="Cliquer ici pour choisir le nombre de lignes par pages à afficher">Nombre de lignes par pages</label> <select id="nbLigneParPage" title="Cliquer ici pour choisir le nombre de lignes par pages à afficher" onchange="submit()"> <option value="5" selected="selected">5</option> <option value="10">10</option> <option value="10">20</option> <option value="10">50</option> </select> </form>
Comment récupérer cette valeur, sachant que je ne peux utiliser que la méthode GET pour se conformer à l'architecture du site :?:
La reconstruction du lien url s'effectue via le script javascript
La vie est perdue contre la mort, mais la mémoire gagne dans son combat contre le néant. [ Tzvetan Todorov ]

ViPHP
ViPHP | 1961 Messages

18 janv. 2007, 17:23

Bonjour,

Je pense que tu devrais passer par une fonction intermédiaire, je m'explique.

Pas d'action dans la form.
ton évènement onchage te renvoie à une fonction laquelle récupère l'option sélectionnée et tu construit ton URI avec l'option.
Il ne te reste plus qu'a l'envoyer via document.location.
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

Eléphanteau du PHP | 43 Messages

18 janv. 2007, 19:42

Si je comprend bien le onchange renvoie une fonction avec en paramètre l'option sélectionnée. Dans ce cas comment récupérée l'option sélectionnée ?
La vie est perdue contre la mort, mais la mémoire gagne dans son combat contre le néant. [ Tzvetan Todorov ]

ViPHP
ViPHP | 1961 Messages

18 janv. 2007, 22:34

Re,

En y réfléchissant, je crois qu'il-y-a plus simple.
Tu supprimes l'action de ta form

Code : Tout sélectionner

<form method="get" action="">
Tu modifies ta ligne comme suit (n'oublie pas de remplacer fichier.ext?choix= par les bonnes valeurs)

Code : Tout sélectionner

<select id="nbLigneParPage" title="Cliquer ici pour choisir le nombre de lignes par pages à afficher" onchange="document.location = 'fichier.ext?choix=' + this.options[this.selectedIndex].value">
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

Eléphanteau du PHP | 43 Messages

20 janv. 2007, 10:53

Merci, ça fonctionne. Je met le post en résolu :D
La vie est perdue contre la mort, mais la mémoire gagne dans son combat contre le néant. [ Tzvetan Todorov ]