Actriver/Desactiver une listbox avec 3 boutons radio

Résolu
cs_Nodoka Messages postés 34 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 21 juillet 2011 - 5 juin 2008 à 14:39
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 - 5 juin 2008 à 16:40
Bonjour,

J'ai un soucis ! Mon projet est de réaliser une page dans la quelle il y a 3 bouton radio.

Ces boutons une fois activer affiche une liste box.

Le problème est la, j'arrive a activer et désactiver une liste mais les deux autres ne fonctionnent pas.

Voici ma fonction java :


<script language="Javascript">

function GereControle(Controleur, Controle, Masquer)

{

var objControleur = document.getElementById(Controleur);

var objControle = document.getElementById(Controle);

if (Masquer=='1')

objControle.style.visibility=(objControleur.checked==true)?'visible':'hidden';

else

objControle.disabled=(objControleur.checked==true)?false:true;

return true;

}

</script>


Voici le code html :






<label for="ls">Lower School </label>

<select id="p_ls" size="4">

<option>LS_LIB</option>

<option>LS_ROOM_236</option>

<option>LS_ROOM_243</option>

<option>LS_ROOM_317</option>

</select>







<label for="ms"> Middle School


</label>

<select size="7" id="p_ms">

<option>MS_ROOM_354</option>

<option>MS_ROOM_368</option>

<option>MS_LAB</option>

<option>MS_OFFICE</option>

<option>MS_ROOM_354</option>

<option>MS_ROOM_368</option>

<option>MS_TROLLEY</option>

</select>




<label for="ls">Upper School </label>

<select size="15" id="p_us">

<option>US_Library</option>

<option>US_ROOM_376</option>

<option>US_GUIDANCE</option>

<option>US_Lib</option>

<option>US_LIB_off</option>

<option>US_library</option>

<option>US_MATH_DPT</option>

<option>US_office</option>

<option>US_ROOM_378</option>

<option>US_ROOM_390</option>

<option>us_room_391</option>

<option>US_room_452</option>

<option>Us_room_516</option>

<option>US-Library</option>

<option>us-office</option>

</select>






j'aimerai aussi avoir par défaut lors de l'ouverture de la page juste les 3 boutons de visible.

Voila en espérant une réponse .

Amicalement Max.

6 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
5 juin 2008 à 14:52
Bonjour,

    pas sûr de répondre réellement....

<script type="Text/Javascript">
function GereControle(Masquer)
{    for ( var n=0;n< document.toto.sel.length;n++ )
    {    document.toto.sel[n].style.visibility="hidden";    }
    document.getElementById(Masquer).style.visibility="visible";
}
</script>
....
<form name="toto">

<label for="ls">Lower School </label>
<select id="p_ls" size="4" name="sel"
        style="visibility:hidden" >
....

<label for="ms"> Middle School

</label>
<select size="7" id="p_ms" name="sel"
        style="visibility:hidden" >
...

<label for="ls">Upper School </label>
<select size="15" id="p_us" name="sel"
        style="visibility:hidden"  >
...
</form>

    mais tu nous diras....

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
5 juin 2008 à 15:27
en javascript on peut dire que "tout est array"
si dans un formulaire titi, tu as des champs qui ont le même name ( toto )
    document..titi.toto est un array, donc length, le nombre de postes.
ici donc on cache tous les slect ( name sel dans le formulaire toto ),
     pour ne réafficher que celui demandé
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
3
cs_Nodoka Messages postés 34 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 21 juillet 2011
5 juin 2008 à 15:04
Sa fonctionne ! maintenant je vais essayé de comprendre l'algo :)
Merci bcp !
0
cs_Nodoka Messages postés 34 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 21 juillet 2011
5 juin 2008 à 15:18
Serait tu m'expliquer si se n'est pas trop demandé t'as boucle for

for ( var n=0;n< document.toto.sel.length;n++ )
    {   
    document.toto.sel[n].style.visibility="hidden";   
    }
    document.getElementById(Masquer).style.visibility="visible";
}

Surtout le document.toto.sel.length.
0

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

Posez votre question
cs_Nodoka Messages postés 34 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 21 juillet 2011
5 juin 2008 à 16:06
Oki merci bien :)
0
nicomilville Messages postés 3472 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 28 février 2014 36
5 juin 2008 à 16:40
Salut bultez et nodoka,

@nodoka : si les réponses de bultez t'on aidés tu peus utiliser le réponse accèpté...

a++

Si la réponse vous convient, pensez : Réponse accepté !
0
Rejoignez-nous