jQuery obtenir l'id de l'élément en faisant une recherche par catégorie
C'est mon code html :
<div id="my_box_one" class="head-div">
<div>
<div class="some_box">a</div>
<div class="some_box">b</div>
</div>
</div>
Je veux obtenir l'ID de la div parent("#my_box_one") à l'aide de la classe de cette div(".tête-div")
$(document).ready(function(){
$(".some_box").click(function(){
var abc = $(this).parentsUntil(".head-div").attr("id");
//also tried $(this).parent(".head-div") -- same effect
alert(abc); //Shows as Undefined
});
});
Je peux faire la suite et qu'il fonctionne bien, mais il ne semble pas juste.
var abc = $(this).parent("div").parent("div").attr("id");
OriginalL'auteur DMin | 2011-04-30
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser .la plus proche( sélecteur ), par exemple:
http://api.jquery.com/closest/
.parent( sélecteur ) ne sélectionne que parent immédiat de l'élément.
OriginalL'auteur Lapple
parentsUntil
obtient tous les éléments parents jusqu'à ce que le complétant par le sélecteur. Il ne comprend pas l'élément de correspondance. Vous essayez d'avoir leid
de l'intervenantdiv
, ce qui n'est évidemment pas défini.Vous devez utiliser
proche
, qui va jusqu'à l'arbre du DOM jusqu'à ce qu'il trouve un élément correspondant au sélecteur, puis retourne seulement cet élément:Edit: pour plus de vitesse, mais moins de souplesse dans le cas où vous changez votre balisage, vous pouvez utiliser le
parentNode
propriété:OriginalL'auteur lonesomeday