我的桌子看起来像这样:
<table>
<tr>...</tr>
<tr class="gotChild">...</tr>
<tr class="gotParent">...</tr>
<tr>...</tr>
<tr>...</tr>
<tr class="gotChild">...</tr>
<tr class="gotParent">...</tr>
<tr class="gotParent">...</tr>
<tr class="gotParent">...</tr>
<tr class="gotParent">...</tr>
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
<tr class="gotChild">...</tr>
<tr class="gotParent">...</tr>
<tr class="gotParent">...</tr>
</table>
在
.gotParent
行内(显然)是带有按钮的表单元格。单击它时,我想影响最近的.gotChild
表行。如果
.gotChild
是前一行,那很容易,我使用:$('.button').on('click', function() {
var gotChild = $(this).parent().parent().prev('.gotChild');
}
但是,如果有更多
.gotParent
行作为前几行,则此功能无效。使用
.prevAll()
影响所有.gotChild
行(应仅是它找到的第一行。使用
.prevUntill()
会影响所有表行,而只应影响.gotChild
行。如何定位此特定行?
最佳答案
您可以使用下面的代码选择最接近的先前同级:
var gotChild = $(this).parent().parent().prevAll(".gotChild:first");
关于jquery - 在类中查找上一个表行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32170646/