计算表中超链接的数量

时间:2019-06-06 16:57:21

标签: javascript

您好,我有一个动态Web表格,我想使用Javascript计算表格中的超链接。

这是HTML:

      <tbody>
       <tr>
        <td style="..."
         <a id =" " href="test1">123456</a>
        </td>
        <td style="..."
         <a id =" " href="test2">123477</a>
        </td>
        <<td style="..."
         <a id =" " href="test3">1234557</a>
        </td>

我想从此HTML获取href的计数

这是我到目前为止尝试过的:

    Function Rowcount(){
        var totalRowCount=0;
//identifying the table
        var table=document.getElementById("tableID");
//identifying the row
        var rows=table.getElementsByTagName("tr");
        var tdata=null;
        for( var i=0; i<rows.length; i++){

           tdata=rows[i].getElementsByTagName("td")

        }
    }

我不知道该如何称呼“ href”

5 个答案:

答案 0 :(得分:2)

您要计算表格中的所有A标签吗?

做类似的事情

const table = document.getElementById("tableID");
const total = table.querySelectorAll('a').length;

答案 1 :(得分:1)

使用querySelectorAll并获取集合的长度:

let linkCount = document.querySelectorAll('#tableID tr > td > a').length

console.log(linkCount)
<table id="tableID">
  <tbody>
    <tr>
      <td style="..."> <a id=" " href="test1">123456</a>
      </td>
      <td style="..."> <a id=" " href="test2">123477</a>
      </td>
      <td style="..."> <a id=" " href="test3">1234557</a>
      </td>
  </tbody>
</table>

答案 2 :(得分:0)

尝试

mytable.querySelectorAll('a').length

let linksNum = mytable.querySelectorAll('a').length;

console.log( linksNum );
<table id="mytable">
<tbody>
    <tr>
    <td style="...">
    <a id =" " href="test1">123456</a>
    </td>
    <td style="...">
    <a id =" " href="test2">123477</a>
    </td>
    <td style="...">
    <a id =" " href="test3">1234557</a>
    </td>
 </tbody>
 </table>

答案 3 :(得分:0)

您可以尝试此操作,请参见reference。这将选择表中的所有HTMLAnchorElement元素,您可以更改父项以适合您的条件

var container = document.querySelector("table"); // parent
// if you have many tables you can do something like,to select particular table

//var container = document.getElementById("tableid"); // parent
var matches = container.querySelectorAll("a");
console.log(matches.length)
<table>
  <tbody>
    <tr>
      <td style="...">
        <a id=" " href="test1">123456</a>
      </td>
      <td style="...">
        <a id=" " href="test2">123477</a>
      </td>
      <td style="...">
        <a id=" " href="test3">1234557</a>
      </td>
    </tr>
  </tbody>
</table>

答案 4 :(得分:0)

谢谢大家。这是我面临的另一个挑战。动态表有5000行,首页只有50行,因此它只有50条,基本上不会自动发生分页。知道我应该使用什么来进行分页以便返回所有的'a'吗?