【问题标题】:Get the number of rows in a HTML table [duplicate]获取 HTML 表格中的行数 [重复]
【发布时间】:2012-07-29 09:17:12
【问题描述】:

我浏览了 Internet 以寻找有关此问题的答案,但找不到解决方案。我想计算按下链接按钮时我的 HTML 表格中的行数。有人可以帮帮我吗?

这是我目前所拥有的:

 $('#HypSelectAll').click(function () {
     var count = $('#gvPerformanceResult').children().length;
     for (i = 0; i < count; i++) {
        alert(i);
     }
 });

但是,即使我的表中有大约 12 行,它也会返回 0?我已经检查了我的 ID 名称,它是正确的。

【问题讨论】:

    标签: javascript jquery html-table


    【解决方案1】:
    var x = document.getElementById("myTable").rows.length;
    

    【讨论】:

    • 有没有办法将其子集到满足特定条件的行?
    【解决方案2】:

    试试:

    var count = $('#gvPerformanceResult tr').length;
    

    【讨论】:

    • 请注意,这不会给出嵌套表的预期结果,即包含其他表的表。
    【解决方案3】:

    以下代码假定您的表的 ID 为“MyTable”

    <script language="JavaScript">
    <!--
    var oRows = document.getElementById('MyTable').getElementsByTagName('tr');
    var iRowCount = oRows.length;
    
    alert('Your table has ' + iRowCount + ' rows.');
    //-->
    </script>
    

    答案来自:http://www.delphifaq.com/faq/f771.shtml,这是 google 查询的第一个结果:“获取 HTML 表中的行数”;)

    【讨论】:

    【解决方案4】:

    在 DOM 中,tr 元素(隐式或显式)是 tbodytheadtfoot 的子元素,而不是 table 的子元素(因此得到 0)。所以一般的答案是:

    var count = $('#gvPerformanceResult > * > tr').length;
    

    这包括表格的行,但不包括任何内部表格的行。

    【讨论】:

    • 或者你可以使用:var count = $('#gvPerformanceResult tr').length;
    【解决方案5】:

    这取决于你的桌子上有什么。

    它是以下之一 如果你只有一张桌子

    var count = $('#gvPerformanceResult tr').length;
    

    如果您担心子表,但这不适用于 tbody 和 thead(如果您使用它们)

    var count = $('#gvPerformanceResult>tr').length;
    

    这会在哪里起作用(但坦率地说,这有点矫枉过正。)

    var count = $('#gvPerformanceResult>tbody>tr').length;
    

    【讨论】:

    • 第二个选择器根本不起作用。
    猜你喜欢
    • 1970-01-01
    • 2013-06-25
    • 1970-01-01
    • 2017-10-17
    • 2019-12-08
    • 2021-12-16
    • 1970-01-01
    • 1970-01-01
    • 2018-08-15
    相关资源
    最近更新 更多