bonjour,
voici mon code html
Pour lister le div qui est sélectionné (la classe "selected"), je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 <div id="liste"> <div id="div0"> <input type="text" id="a0"> </div> <div id="div1" class="selected"> <p> <input type="checkbox" id="ba"><label for="ba">cccc <acronym title="xxxxx">zzzz</acronym></label><br> </p> <div> <input type="checkbox" id="b0"><label for="b0">aaaa</label><br> <input type="checkbox" id="b1"><label for="b1">cccc <acronym title="xxxxx">zzzz</acronym></label><br> <input type="checkbox" id="b2"><label for="b2">bbbb</label><br> <input type="checkbox" id="b3"><label for="b3">dddd</label> </div> </div> <div id="div2"> <input type="text" id="c0"> </div> </div>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $("div#liste > .selected").each(function(){ alert($(this).attr("id")); });
Ce que je voudrais faire ensuite, c'est :
- Si l'id de l'élément sélectionné vaut "div1" alors afficher (alert(...)) les id des <input> qui sont dans "#div1 > div"
- Si l'id de l'élément sélectionné ne vaut pas "div1" alors faire autre chose
=> comment faire cela proprement ?
=> ça le .find() ne fonctionne pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 $("div#liste > div.selected").each(function(){ if($(this).attr("id") == "L0"){ alert("#L0 touvé !"); $(this).find("div > input").each(function(){ // marche pas alert("checkbox : " + $(this).attr("id")); }); } else { alert("#L0 non touvé !"); } });
Et enfin, je voudrais faire :
- Si l'id de l'élément sélectionné vaut "div1" et que l'un des éléments "#div1 > div > input" qui est à l'intérieur a un <label> associé avec un <acronym> à l'intérieur alors afficher un message spécifique
Remarque :
chaque checkbox de #div1 à un label associé => attribut "id" du checkbox == attribut "for" du <label>
Partager