Liste déroulante

alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007 - 18 mars 2006 à 01:11
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 - 18 mars 2006 à 12:23
bonjour,

je sais pas si c'est possible mais rien n'est a priori impossible en informatique

je dois créer 3 listes déroulantes avec le meme contenu
il faudrait que quand on fait un choix dans la liste N°1 ce choix là ne soit plus disponible dans le liste N°2 et N°3 et quand on choisi dans la N°2 que le choix n'y soit plus dans la N°3

j'espere que j'ai bien expliqué

Merci !!!

13 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
18 mars 2006 à 10:44
Bonjour,
les 3 listes sont-elles les mêmes au départ ?
si oui :
dans liste 1
onchange="liste 2.options[liste 1.selectedIndex].text='';"
dans liste 2
onchange="liste 3.options[liste 2.selectedIndex].text='';"

ici on efface l'affichage de la ligne dans la liste concernée,
on peut tout envisager, bien entendu.

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
18 mars 2006 à 11:03
salut j'ai testé mais j ai du oublier quelque chose:
Voici le code : Merci d avance !

<form name="form1" method="post" action="">
<select name="liste1" size="1">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<select name="liste2" size="1" onchange="liste 2.options[liste 1.selectedIndex].text='';">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<select name="liste3" size="1" onchange="liste 3.options[liste 2.selectedIndex].text='';">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
</form>
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
18 mars 2006 à 11:28
<form name="form1" method="post" action="">
<select name="liste1" size=5
onchange="document.getElementById('liste2').options[document.getElementById('liste1').selectedIndex].text='';">
<optgroup label="1">
<option value="1">a</option>
<option value="2">b</option>
<option value="3">c</option>
</optgroup>
</select>
<select name="liste2" size=5
onchange="document.getElementById('liste3').options[document.getElementById('liste2').selectedIndex].text='';">
<option value="1">a</option>
<option value="2">b</option>
<option value="3">c</option>
</select>
<select name="liste3" size=5>
<option value="1">a</option>
<option value="2">b</option>
<option value="3">c</option>
</select>
</form>

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
18 mars 2006 à 11:30
ou

onchange="document.getElementById('liste#').options[this.selectedIndex].text='';">

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
18 mars 2006 à 11:35
ok merci c'est pas mal
mais...
comment peut on enlever la lettre 1 au début de la liste
et là le texte du choix 1 disparait dans la liste 2 mais il reste quand meme le choix mais vide.

Peut on pas le faire disparaitre?

Merci beacoup
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
18 mars 2006 à 11:46
>>mais il reste quand meme le choix mais vide
oui,

quand une ligne est choisie dans une liste =>
rechercher la même ligne dans la liste suivante
( boucle de 0 à liste.length-1 et test sur .text )
si on trouve
décaler les options à partir de cette ligne +1
vers "une ligne plus haut"
en fin faire liste.length-1

et si on déselectionne la ligne dans la liste initiale
il faudra songer à, la remettre dans la liste suivante.

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
18 mars 2006 à 11:47
>>comment peut on enlever la lettre 1 au début de la liste
ça : je n'ai pas compris
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
18 mars 2006 à 11:53
oui dans la 1ere liste il y a au dessus du choix A un sorte de 1
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
18 mars 2006 à 11:55
c'est à cause de <optgroup label="1">

par contre faire ça en javascript sort de mes compétences

quand une ligne est choisie dans une liste =>
rechercher la même ligne dans la liste suivante
( boucle de 0 à liste.length-1 et test sur .text )
si on trouve
décaler les options à partir de cette ligne +1
vers "une ligne plus haut"
en fin faire liste.length-1

et si on déselectionne la ligne dans la liste initiale
il faudra songer à, la remettre dans la liste suivante.

Merci pout tout
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
18 mars 2006 à 11:58
ah... j'ai pour habitude de "donner un titre"
aux select, ici fait seulement sur le 1er...

<optgroup label="titre du select">
<option value="1">a</option>
<option value="2">b</option>
<option value="3">c</option>
</optgroup>

supprimer les <optgroup...> et </optgroup>

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
alex1025 Messages postés 104 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 8 décembre 2007
18 mars 2006 à 12:01
sur firefox ça marche pas normal??

Merci
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
18 mars 2006 à 12:19
<form name="form1" method="post" action="">
<select name="liste1" size=5
onchange="form1.liste2.options[this.selectedIndex].text='';">
<option value="1">a</option>
<option value="2">b</option>
<option value="3">c</option>
</select>
<select name="liste2" size=5
onchange="form1.liste3.options[this.selectedIndex].text='';">
<option value="1">a</option>
<option value="2">b</option>
<option value="3">c</option>
</select>
<select name="liste3" size=5>
<option value="1">a</option>
<option value="2">b</option>
<option value="3">c</option>
</select>
</form>

là ça baigne, mais j'avoue ne pas comprendre ?!??!!!!
FF exige presque d'utiliser getElementById, et ici ça ne marcherait pas ????
car avec le name c'est ok !!! on doit faire une erreur, mais où ?

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
18 mars 2006 à 12:23
ben oui... c'est normal....

s'il n'y a pas ID dans les balises, IE tente avec le name
( et réciproquement d'ailleurs ) mais hélas, pas FF

<select id="liste#" name="liste#" size=5...>
et donc, pour FF, il vaut mieux utiliser getElementById...

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
Rejoignez-nous