表长度上的jQuery计数返回的值不正确
我正在尝试计算表中的行数。当我通过控制台进行测试时,我得到以下结果:表长度上的jQuery计数返回的值不正确,jquery,html-table,Jquery,Html Table,我正在尝试计算表中的行数。当我通过控制台进行测试时,我得到以下结果: $("#rule_summary").html(); " <thead> <tr> <th><b>Actions</b></th><th><b>Contact Type</b></th><th><b>Contact
$("#rule_summary").html();
"
<thead>
<tr>
<th><b>Actions</b></th><th><b>Contact Type</b></th><th><b>Contact Number</b></th><th><b>Call Order</b></th><th><b>Text</b></th>
</tr>
</thead>
<tbody>
<tr>
<td>
<a href="" class="delete">Delete</a>
</td>
<td> Home Number</td>
<td> 4442</td>
<td> 1</td>
<td> no </td>
</tr>
<tr>
<td>
<a href="" class="delete">Delete</a>
</td>
<td> M Number</td>
<td> 28507</td>
<td> 2</td>
<td> yes </td>
</tr>
</tbody>
"
我一直在检查代码,以确保我的表格式正确。。。我看不出有什么问题。。但也许另一双眼睛会发现一些东西。
有什么建议吗 试试这个
$("#rule_summary tr").length
请记住,这将包括表标题行。
在这里演奏小提琴:
没有什么不对的。您将得到一个
1
,因为只有一个元素id为#rule_summary
如果要计算行数(tr
),您应该:
- 选择所有行
- 计算选定元素的数量
$('#rule_summary').find('tr').length
你应该使用
$("#rule_summary tr").length
如果要计算包括标题行在内的所有行
如果只需要数据行(无标题),也可以使用此选项
在这种情况下,请始终使用
查找
而不是复杂选择器。就性能而言,它要快得多。
$("#rule_summary tr").length
$("#rule_summary tbody tr").length