jQuery-获取元素的第二级父级

jQuery-获取元素的第二级父级,jquery,html,parent,Jquery,Html,Parent,我正在尝试检索元素的父级(祖父母?)的父级。我想找到那个祖父母,然后在那个元素中找到一个标记,然后将那个文本作为变量存储在页面的其他地方发布。我一直在尝试使用parent()函数,但没有成功 以下是我尝试的代码: $('.mixPlayCell a').click( function() { var title = $(this).parent().get(0).parent().get(0).text(); alert(title); });

我正在尝试检索元素的父级(祖父母?)的父级。我想找到那个祖父母,然后在那个元素中找到一个标记,然后将那个文本作为变量存储在页面的其他地方发布。我一直在尝试使用parent()函数,但没有成功

以下是我尝试的代码:

    $('.mixPlayCell a').click( function() {
        var title = $(this).parent().get(0).parent().get(0).text();
        alert(title);
    });
尝试:

像这样的

$(this).parent().parent().find('mytag').text()
应该很好用


您可以使用
find
方法中的任何选择器。如果您只需要搜索祖父母元素的直接子元素,还可以使用
$.children
而不是
find
,后者搜索元素的所有子元素。

只有一个父元素,无需获取(0)


用于选择第二个父级

parents(':eq(1)')
看起来比

parent().parent()
而且,你可能会发现

closest('ul')

更适合这份工作。

为了实现简单,请尝试以下方法:

$('.mixPlayCell a').click( function() {
    var title = $(this).parents().text();
    alert(title);
});
刚刚将.parent()更改为一个.parents()

这适用于每个jQuery版本。

返回一个列表,因此它适用于:

$(this).parents()[1];

我想你不明白
.get()
做什么,我当然不明白。我在jQuery中所做的一切都是猜测和检查。。。您能详细说明一下吗?因为
parent()
只返回一个元素的集合,所以您可以直接调用该集合的下一个函数。
get(0)
是隐式的。get。()用于请求。+1、.get(0)是不必要的,并返回没有jQuery方法的DOM对象。查看[link]以获得更快更优雅的aproach,而不是使用.parent().parent()。。。。
closest('ul')
$('.mixPlayCell a').click( function() {
    var title = $(this).parents().text();
    alert(title);
});
$(this).parents()[1];