Appliquer la même option à plusieurs listes déroullante

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Appliquer la même option à plusieurs listes déroullante

par Ryle » 02 avr. 2008, 16:17

Absolument vi :)

Faut l'avoir déclaré avant de pouvoir l'utiliser dans une fonction ou dans un attribut html. (tu peux aussi lui assigner une valeur lors de la déclaration.. ce qui ne serait pas mal ici dans la mesure où l'on peut cliquer sur le bouton sans pour autant avoir choisit une liste déroulante)

par Aureusms » 02 avr. 2008, 15:34

Ok j'essaye cela.

Quand tu dis que id0 doit être écrit comme "var id0;" en dehors de la focntion. Est on obligé de déclarer la variable dans un morceau de javascript avant de lui assigner une valeur?

par Ryle » 02 avr. 2008, 11:38

Quelques petites choses qui ne vont pas.

Il faut que ton id0 soit une variable globale (donc déclarée avec "var" en dehors d'une fonction)
Il te faut également virer les "function { }" dans le onClick
Enfin, il te manque un i++ dans ta boucle :

<script type="...">
<!--
var id0;
function meme_select() { 
  var i=1; 
  while (i < 4)  { 
    option0 = document.getElementById(id0).selectedIndex; 
    document.getElementById('select_'+i).selectedIndex = option0; 
    i++;
  } 
}
//-->
</script>

<select id="select_1" onclick="id0= this.id;"> 
<option value="0">Valeur 0</option> 
<option value="1">Valeur 1</option> 
<option value="2">Valeur 2</option> 
<option value="3">Valeur 3</option> 
</select> 

<select id="select_2" onclick="id0= this.id;"> 
<option value="0">Valeur 0</option> 
<option value="1">Valeur 1</option> 
<option value="2">Valeur 2</option> 
<option value="3">Valeur 3</option> 
</select> 

<select id="select_3" onclick="id0= this.id;"> 
<option value="0">Valeur 0</option> 
<option value="1">Valeur 1</option> 
<option value="2">Valeur 2</option> 
<option value="3">Valeur 3</option> 
</select>

<input type="button" onclick="meme_select()" value="tous les mêmes select" />

par guilt92 » 02 avr. 2008, 09:39

Bonjour,

Le problème vient de ta fonction javascript :

Ce que je ne comprends pas c est quelle valeur tu veux mettre pour tous les selects...

Sinon un code qui pourrait marcher et mettre la valeur du select_1 à tous les select pourrait fonctionner comme ca :

Code : Tout sélectionner

function meme_select() { var option0 = document.getElementById("select_1").selectedIndex; //on definit la valeur de référence for (i=1; i< 4;i++) //ici il faut soit un while mais avec un i++ à la fin, sinon un for peut aussi marcher { document.getElementById('select_'+i).selectedIndex = option0; //tu définis la valeur de tous les selects basé sur option0 } }

Appliquer la même option à plusieurs listes déroullante

par Aureusms » 01 avr. 2008, 22:18

Bonjour,

Oui je sais le titre est un peu vague...

J'ai plusieurs liste avec balises select de type :

Code : Tout sélectionner

<select id="select_1" onclick="function { var id0= this.id;}"> <option value="0">Valeur 0</option> <option value="1">Valeur 1</option> <option value="2">Valeur 2</option> <option value="3">Valeur 3</option> </select> <select id="select_2" onclick="function { var id0= this.id;}"> <option value="0">Valeur 0</option> <option value="1">Valeur 1</option> <option value="2">Valeur 2</option> <option value="3">Valeur 3</option> </select> <select id="select_3" onclick="function { var id0= this.id;}"> <option value="0">Valeur 0</option> <option value="1">Valeur 1</option> <option value="2">Valeur 2</option> <option value="3">Valeur 3</option> </select>
Ce que je voudrais faire est un bouton de type : je clique et toutes les select nommées ont la même options choisies.
Ce que j'ai fais :

Code : Tout sélectionner

<input type="button" onclick="meme_select()" value="tous les mêmes select" />
Et la fonction javascript :

Code : Tout sélectionner

function meme_select() { var i=1; while (i < 4) { option0 = document.getElementById(id0).selectedIndex; document.getElementById('select_'+i).selectedIndex = option0; } }
Là je crois que tous le code est a refaire car même moi je pense que cela ne marchera pas...
Ce que désire faire est que lorsqu'on clique (ou peut être onchange ?), la variable id0 contienne l'id du select pour ré attribuer l'option choisi dnas les autres. Bien sûr : cela ne marche pas...