Comment énumérer les optgroup d'un select

Résolu
kbalevil Messages postés 23 Date d'inscription dimanche 17 novembre 2002 Statut Membre Dernière intervention 11 août 2006 - 22 févr. 2006 à 17:26
tithom1334 Messages postés 5 Date d'inscription jeudi 23 mars 2006 Statut Membre Dernière intervention 1 avril 2006 - 1 avril 2006 à 16:18
Salut à tous,

Voici mon soucis,

Je souhaiterais changer l'état des groupes d'une combo contenant des groupes.
Je sais que pour la balise <option>, c'est options[0 -> n], mais qu'en est il de la balise <OPTGROUP> ?

Merci d'avance

11 réponses

kbalevil Messages postés 23 Date d'inscription dimanche 17 novembre 2002 Statut Membre Dernière intervention 11 août 2006
24 févr. 2006 à 09:22
Merci pour ta réponse, en fait j'ai fini par trouver une solution :



groupes = post. MaCombo .getElementsByTagName('OPTGROUP');

selection = 0;

for (i=0; i < groupes.length ; i++)

{

...

}

Voilà.



Merci encore pour ta réponse
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
23 févr. 2006 à 11:26
Bonjour,
en lui mettant un ID ?

<select size=5 id="sel">
<optgroup label="exemple" id="ex">
<option>1</option>
<option>2</option>
</optgroup>
</select>
<script type="text/javascript">
alert( document.getElementById("ex").innerHTML+"\r\n"+
document.getElementById("ex").label );
</script>

mais ça dépend de ce qu'il faut en faire....
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
24 févr. 2006 à 09:30
pas proposé ByTagName, car :
Accède, conformément à la variante XML du modèle DOM à un élément au choix dans l'arborescence d'éléments du document.
Le nom d'élément est ici déterminant, en HTML par exemple des noms comme h1, blockquote ou bien img.
Pour chaque type d'élément HTML est créé un tableau (Array) dans le document, par lequel les différents éléments peuvent être adressés.
Malheureusement, cette méthode du modèle DOM n'est pas prévu dans la variante HTML, pourtant elle fonctionne malgré tout avec
les interpréteurs JavaScript des navigateurs plus récents. C'est pourquoi, elle est décrite ici - à la différence des autres
propriétés et méthodes de l'objet document - dans la variante XML du modèle DOM.
lu sur selfhtml.
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
kbalevil Messages postés 23 Date d'inscription dimanche 17 novembre 2002 Statut Membre Dernière intervention 11 août 2006
24 févr. 2006 à 09:40
Merci,



Par contre dans mon exemple, j'ai plusieurs groupes et je dois en
laisser un seul actif en fonction du choix d'une première combo, donc
le choix de l'id me semble plus compliqué.
0

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

Posez votre question
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
24 févr. 2006 à 09:52
un ID "évolutif"...

var num=1;
while ( document.getElementById("idevolutif"+num) )
{
faire le boulot;
num++;
}
avec id="idevolutif1",id="idevolutif2",id="idevolutif3"...

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
on ne dis pas évolutif mais cheveux qui poussent</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
24 févr. 2006 à 09:55
car sinon comment faire (simplement ) s'il y avait
plusieurs select et à ne pas traiter de la même manière ?
ByTagName les prend tous !
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
kbalevil Messages postés 23 Date d'inscription dimanche 17 novembre 2002 Statut Membre Dernière intervention 11 août 2006
24 févr. 2006 à 20:14
Ok, je vais voir avec ça. Merci encore
0
tithom1334 Messages postés 5 Date d'inscription jeudi 23 mars 2006 Statut Membre Dernière intervention 1 avril 2006
1 avril 2006 à 12:26
Bonjour à tous,

Je suis pas très loin d'être débutant en Javasript et ce post répond en partie à mon problème. J'espère que quelqu'un pourra me donner des infos supplémentaires.

Je modifie une liste déroulante (liste2) à partir du choix fait dans la première (liste1) à l'aide d'un script php contenant une requete à une base de donnée comme dans le tuto : http://robloche.free.fr/javascript/tuto_xhr/tuto_xhr.html
Résultat : les optgroup restent affichés et vides, les nouvelles valeurs de la liste2 s'incrivent après les optgoup.
Avec document.getElementById("liste2").innerHTML et document.getElementById("liste2").label j'arrive à supprimer le contenu du optgroup ou modifier le label, mais je n'arrive pas à le supprimer carrement ou au moins que les nouvelles valeurs de la liste2 s'affiche dans un optgroup de mon choix.


Pourriez vous, s'il vous plait, me donner quelques infos à ce sujet ou un bout de code pour que je puisse avancé dans mon problème.
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
1 avril 2006 à 12:47
Bonjour tithom1334,

° de la chance que je passais : j'ai répondu et je suis prévenu
d'un nouveau message, mais tous ceux qui à l'époque n'avaient
pas participer, eux, ne voient rien...
il aurait fallu poser une nouvelle question [ peut-être en citant
ce message ? ]

° renvoi vers un autre site, que j'ai fait l'effort d'aller voir, et
ça cause de xmlhhtprequest, donc le rapport avec <select> ???

° de ce que je crois comprendre il s'agit de supprimer un optgroup ?
y compris "son contenu" ? et je ne comprend pas
>>ou au moins que les nouvelles valeurs de la liste2 s'affiche dans un optgroup de mon choix.

° je te conseille de poser la question sur le forum quand même, les intervenants
y seront plus nombreux, en explicitant un peu ET en donnant un extrait du script
et du html en cause. pas le php !!!! un extrait de la page générée.

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
1 avril 2006 à 12:47
Bonjour tithom1334,

° de la chance que je passais : j'ai répondu et je suis prévenu
d'un nouveau message, mais tous ceux qui à l'époque n'avaient
pas participer, eux, ne voient rien...
il aurait fallu poser une nouvelle question [ peut-être en citant
ce message ? ]

° renvoi vers un autre site, que j'ai fait l'effort d'aller voir, et
ça cause de xmlhhtprequest, donc le rapport avec <select> ???

° de ce que je crois comprendre il s'agit de supprimer un optgroup ?
y compris "son contenu" ? et je ne comprend pas
>>ou au moins que les nouvelles valeurs de la liste2 s'affiche dans un optgroup de mon choix.

° je te conseille de poser la question sur le forum quand même, les intervenants
y seront plus nombreux, en explicitant un peu ET en donnant un extrait du script
et du html en cause. pas le php !!!! un extrait de la page générée.

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>
0
tithom1334 Messages postés 5 Date d'inscription jeudi 23 mars 2006 Statut Membre Dernière intervention 1 avril 2006
1 avril 2006 à 16:18
Merci pour ta réponse. J'ai posté un nouveau message sur le forum en détaillant plus et en essayant d'être plus clair. Merci à toi.
0
Rejoignez-nous