我正在尝试检索< a>的父级。元素的父母(祖父母?)。我想找到那个祖父母,然后找一个< b>在该元素中标记,然后将该文本存储为变量以在页面上的其他位置发布。我一直在尝试使用parent()函数,但没有成功。
这是我尝试过的代码:
$('.mixPlayCell a').click( function() {
var title = $(this).parent().get(0).parent().get(0).text();
alert(title);
});
答案 0 :(得分:56)
用于选择第二个父母
parents(':eq(1)')
看起来比
更顺畅parent().parent()
另外,您可能会发现
closest('ul')
更好地适应这项工作。
答案 1 :(得分:40)
尝试:
$(this).parent().parent().find('.thingtofind').text();
答案 2 :(得分:5)
parents()返回一个列表,因此可行:
$(this).parents()[1];
答案 3 :(得分:3)
$('.mixPlayCell a').click(function() {
elem = $(this).parent().parent();
title = $("tag selector goes here",elem).html();
});
这样的东西?
答案 4 :(得分:1)
只有1个父级,不需要.get(0)
var title = $(this).parent().parent().find("whateveryouwant").html();
答案 5 :(得分:0)
$(this).parent().parent().find('mytag').text()
应该工作得很好。
您可以使用find
方法中的任何选择器。如果您只需要搜索祖父母元素的直接子元素,您也可以使用$.children
代替find
搜索所有元素的子元素。
答案 6 :(得分:-1)
尝试这个简单的实现:
$('.mixPlayCell a').click( function() {
var title = $(this).parents().text();
alert(title);
});
刚刚用一个.parents()
更改了.parent()这适用于每个jQuery版本。