我想要实现的是在当前行之后获取所有rows
它应该获取其后的所有行,直到不再具有特定类为止。
例:

<tr class="clicked_el"></tr>
<tr class="getme"></tr>
<tr class="getme"></tr>
<tr class="getme"></tr>
<tr class="getme"></tr>
<tr></tr> //It should stop here
<tr class="getme></tr>


当我单击带有类clicked_el的tr时。我想获得所有带有getme类的'tr',直到没有tr类的getme

我尝试用nextAll做它不知道如何在nextUntil中使用过滤器

最佳答案

您可以使用$(".clicked_el").nextUntil(":not(.getme)")

这将返回:

<tr class="clicked_el"></tr>
<tr class="getme"></tr> <- This will be returned;
<tr class="getme"></tr> <- This will be returned;
<tr class="getme"></tr> <- This will be returned;
<tr class="getme"></tr> <- This will be returned;
<tr></tr>
<tr class="getme></tr>


演示版


console.log($(".clicked_el").nextUntil(":not(.getme)").length)

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table>
  <tbody>
    <tr class="clicked_el"></tr>
    <tr class="getme"></tr>
    <tr class="getme"></tr>
    <tr class="getme"></tr>
    <tr class="getme"></tr>
    <tr></tr>
    <tr class="getme"></tr>
</tbody>
</table>

10-05 20:46
查看更多