Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/02/2011, 13h45   #1
Membre confirmé
 
Inscription : septembre 2009
Messages : 749
Détails du profil
Informations forums :
Inscription : septembre 2009
Messages : 749
Points : 223
Points : 223
Par défaut lister des elements

bonjour,

voici mon code html
Code :
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>
Pour lister le div qui est sélectionné (la classe "selected"), je fais :
Code :
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 ?
Code :
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é !");
		}
 
	});
=> ça le .find() ne fonctionne pas



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>
boboss123 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2011, 14h30   #2
Membre confirmé
 
Inscription : septembre 2009
Messages : 749
Détails du profil
Informations forums :
Inscription : septembre 2009
Messages : 749
Points : 223
Points : 223
J'ai un peu avancé, j'arrive a lister les checkbox et les label selectionnés :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
	$("div#liste > div.selected").each(function(){
		if($(this).attr("id") == "div1"){
			alert("div#liste > div#div1 touvé !");
 
			$(this).children("div").children("input, label").each(function(){
				alert("div#liste > div#div1 > child trouvé");
 
				// TODO : afficher la valeur de toutes les checkbox et indiquer si celle-ci a un label qui a un acronym ...
			});
		} else {
			alert("div#liste > div#div1 non touvé !");
		}
 
	});
=> mais je ne vois pas comment afficher la valeur de toutes les checkbox et mettre un warning si celle-ci a un label associé qui a un acronym...


Comment détecter si $(this).children("div").children("input, label").each(); ne trouve aucun élément ?
boboss123 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h29.


 
 
 
 
Partenaires

Hébergement Web