我正在尝试获取最接近所选元素的 H3 标记的内容。
$(this).closest('h3').html();
上面的代码运行时包含null,“this”肯定是h3同父元素中另一个元素的选择器。
有人可以提供一个关于为什么它不起作用的想法吗?
谢谢。
“this”绝对是同一个父元素中另一个元素的选择器
那是你的问题。closest
查找DOM 树,而不是沿着它的兄弟姐妹。改用siblings
:
$(this).siblings('h3').html();
请注意,这将返回第一个h3
兄弟的 HTML。如果还有更多,您可能需要指定正确的。
jQuery 也有方法.next()
和.prev()
,以防万一你知道 与哪个方向h3
有关$(this)
。
例如:
$(this).click(function(){
$(this).next('h3').html('a string');
});