我正在尝试从表的<tbody>
部分中检索所有行,但我不确定这样做的语法。我在下面添加了一个虚拟表提取,以及我使用jQuery实现任务的最新尝试!
表格摘录
<tbody>
<tr>
<th id="emergency" colspan="2">Emergency</th>
</tr>
<tr>
<td>Emergency data</td>
<td>Emergency data</td>
</tr>
<tr>
<td>Emergency data</td>
<td>Emergency data</td>
</tr>
</tbody>
<tbody>
<tr>
<th id="urgent" colspan="2">Urgent</th>
</tr>
<tr>
<td>Urgent Data</td>
<td>Urgent Data</td>
</tr>
<tr>
<td>Urgent Data</td>
<td>Urgent Data</td>
</tr>
</tbody>
jQuery代码:
var emergencyRows = $table.find('#emergency').children().get();
答案 0 :(得分:11)
如果您知道表格ID,则可以使用以下内容。
var trs = $("#tableid").find("tbody>tr");
答案 1 :(得分:8)
我的建议是将ID属性放在tbody而不是每一行的第一行。
<强> HTML 强>
<table>
<tbody id="emergency">
<tr>
<th colspan="2">Emergency</th>
</tr>
<tr>
<td>Emergency data</td>
<td>Emergency data</td>
</tr>
<tr>
<td>Emergency data</td>
<td>Emergency data</td>
</tr>
</tbody>
<tbody id="urgent">
<tr>
<th colspan="2">Urgent</th>
</tr>
<tr>
<td>Urgent Data</td>
<td>Urgent Data</td>
</tr>
<tr>
<td>Urgent Data</td>
<td>Urgent Data</td>
</tr>
</tbody>
</table>
<强>的jQuery 强>
var emergencyRows = $("tbody#emergency").find("tr:gt(0)");
var urgentRows = $("tbody#urgent").find("tr:gt(0)");
jQuery代码段将获取除第一行之外的所有相应行。
答案 2 :(得分:4)
这可能是最干净的
$('#emergency').closest('tbody').children(); //only returns first child element, so the <tr>'s
答案 3 :(得分:3)
从您的示例中,您似乎可能想要“除了包含#emergency的行之外的所有行”。如果是这种情况,您可以使用以下内容:
$('#emergency').closest('tr').siblings();
请注意,#emergency
不一定是<tr />
或<th />
或其他任何内容。它可以是表格单元格中的任何元素。
答案 4 :(得分:2)
尝试:
var emergencyRows = $("th#emergency").parent().parent().find("tr:gt(0)");
应该可以获得所有不是标题行的行。
答案 5 :(得分:1)
我能够找到一个解决方案来获取分页页面中的所有记录。您也可以试试这个。
var userList = $("#user-grid").dataTable().fnGetNodes();