我怎样才能得到列表中第一个(下一个)匹配选择器的元素?
示例:
<table>
<tr class="test"><td>not this one</td></tr>
<tr><td><a title="test">click</a></td></tr>
<tr><td>not this one</td></tr>
<tr class="test"><td>this one</td></tr>
<tr class="test"><td>ignore this as well</td></tr>
</table>
$("a").on('click', function(eve){
$(this).parents("tr").???(".test").toggle();
});
编辑
我需要下一排。兄弟姐妹也会得到其他人(如第一排)
3条答案
按热度按时间6qfn3psc1#
使用
.nextAll()
获取元素的后续兄弟元素,使用:first
获取第一个匹配的元素。试试这个:
DEMO
stszievb2#
你可以尝试使用jQuery eq();
给定一个表示一组DOM元素的jQuery对象,.eq()方法从该组中的一个元素构造一个新的jQuery对象。提供的索引标识此元素在集合中的位置。Documentation on jQuery
代码将选择2º兄弟,其类为“test”,< tr >是点击的父节点之一 < a >(红色这个反过来,你得到了你的代码):
Check the Pen!
pkln4tw63#
您可以使用
.next()
选择器:Description: Get the immediately following sibling of each element in the set of matched elements. If a selector is provided, it retrieves the next sibling only if it matches that selector.
对于您的情况,请使用
$(this).parents("tr").next().next()
或
$(this).closest("tr").next().next()