2012-10-24 72 views
0

这是我试图使用的选择器,以便返回它下面的数据。返回一个元素并过滤内部元素以获取其内容

$('.groupPopper').click(function(event){ 
    var name = $(this).index(".name").contents(); 
    alert(name); 
}); 

<a class="groupPopper"> 
    [text class="name">Name here</a> 
</a> 

如何通过点击jquery中的元素'a'来返回文本元素的类?我的例子将不会工作。

+0

如果你阅读文档,你会看到'.index()'返回一个数字。鉴于你的标记,似乎你只需要'$(this).text()'。 –

回答

1

假设你已经在你的jQuery发布什么应该是HTML,这应该工作:

$('.groupPopper').click(function(event){ 
    var name = $(".name", this).text(); 
    alert(name); 
}); 
+0

点。缺少文字() – Adil

+0

@Adil谢谢。你是第一个注意到18个月内的人:) –

+0

不客气@Rory McCrossan,我认为它很容易被注意到,因为它解决了OP,甚至被接受。 – Adil

0

试试这个。 jsfiddle

$('.groupPopper').click(function(event){ 
    var name = $(".name", this).text(); 
    alert(name); 
}); 
0
try using `.text()` 

$('.groupPopper').click(function(event){ 
    var name = $(this).find('.name').text(); 
    alert(name); 
}); 
0

要通过它的类名返回一个孩子,你可以在jQuery中使用.find

$('.groupPopper').click(function(event){ 
    var name = $(this).find(".name").text(); 
    alert(name); 
}); 

或者,如果你有一个以上的孩子有这个类,你可以遍历他们与.each

$('.groupPopper').click(function(event){ 
    $(this).find(".name").each(function() {; 
     var name = $(this).text(); 
     alert(name); 
    }); 
});