我有以下 html 表格:
<table id="jTable">
<tr>
<td>No</td>
<td>Competition</td>
<td>John</td>
<td>Adam</td>
<td>Robert</td>
<td>Paul</td>
</tr> <tr>
<td>1</td>
<td>Swimming</td>
<td>1:30</td>
<td>2:05</td>
<td>1:15</td>
<td>1:41</td>
</tr> <tr>
<td>2</td>
<td>Running</td>
<td>15:30</td>
<td>14:10</td>
<td>15:45</td>
<td>16:00</td>
</tr> <tr>
<td>3</td>
<td>Shooting</td>
<td>70%</td>
<td>55%</td>
<td>90%</td>
<td>88%</td>
</tr> <tr>
<td>Total</td>
<td>Blablabla</td>
<td>1000</td>
<td>1000</td>
<td>1000</td>
<td>1000</td> </tr>
</table>
我想做的是隐藏除第一行、最后一行和最后一行之外的所有行。这是我的做法:
$('#jTable').find('tr:gt(0):not(:last)').slideToggle();
这个 jQuery 脚本只保留第一行和最后一行。知道我必须使用 jQuery 1.7.1(所以我不能使用 nth-last-child 属性)这一事实,我一直在寻找一种方法来选择前最后一行。
最佳答案
您可以找到 last
和 before last
tr
使用 eq()
功能如下。
var len = $('#jTable tr').length;
var first_row = $('#jTable tr').eq(0);
var last_row = $('#jTable tr').eq(len - 1);
var before_last_row = $('#jTable tr').eq(len - 2);
更新
$('#jTable tr').not(first_row).not(last_row).not(before_last_row).slideToggle();
关于javascript - jQuery - 查找表中的最后一行和最后一行之前,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34948229/