jQuery - 查找表中的最后一行和最后一行之前
jQuery - Find the last and before last row in a table
我有以下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(所以我不能使用倒数第 n 个子属性)这一事实,我正在寻找一种方法来选择最后一行之前。
您可以使用
如下所示eq()
函数找到last
和before last
tr
。
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();
将这些放入一个函数中并尝试。
$(document).ready(function(){
$('#jTable tr:first').slidetoggle()
$('#jTable tr:last').slidetoggle()
$('#jTable tr:last').prev().slidetoggle()
})
你不需要使用find()
$(document).ready(function(){
$("#jTable tr").not($("#jTable tr:first")).not($("#jTable tr:last").prev()).slideToggle();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<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>
相关文章:
- 动态插入的表:JQuery未检测到最后一行
- 谷歌地图-数据库中的标记只显示最后一行的信息
- 使用VBScript或Javascript从文本框(文本区域)中删除最后一行空/空行
- 设置AngularJS控制器属性不能是使用Coffeescript的最后一行
- 在每个固定高度段落的最后一行添加省略号,并隐藏溢出 y
- 在表格最后一行(链接)中显示菜单,并在单击菜单项时显示模式窗口
- 如果最后一行已经显示,如何防止jQuery加载更多停止函数
- for循环,直到xml属性不为null.从最后一行开始javascript
- 仅通过最后一行运行Google脚本
- 替换Div.中的最后一行
- 删除表中的最后一行时显示警报窗口
- 使用setAttribute将id设置为元素最后一行的td
- 除去最后一行以外的所有尾部空白
- 如何检查表中最后一列每一行中的值
- 将数据表的所有行(最后一行除外)的光标更改为指针
- Javascript定期获取mysql的最后一行
- 删除表的最后一行,除非它是使用 jquery 的唯一行
- 仅获取具体化选择中的最后一行
- 单击“单击”jqgrid“多选缺少最后一行
- 是否可以将光标锁定/聚焦到文本区域的最后一行