js如何获取表格中某一行的单元格数

这种为什么不对呢?
<script>
var a = document.getElementById("aa") ;
alert(a.cells) ;
</script>
<body>
<table border="1" width="200">
<tr id="aa">
<td>a</td>
<td>b</td>
<td>c</td>
<td>d</td>
</tr>
</table>

javascript提供了获取表格中某一行单元格数的代码,参考如下:

document.getElementById('first').cells.length  // 获取id为first的行的单元格数目

实例演示如下:

    创建Html元素

    <div class="box">
    <span>实例演示:获取表格第一行的单元格数量</span><br>
    <div class="content">
        <table>
            <tr id="first"><td>1</td><td>2</td><td>3</td></tr>
            <tr><td>4</td><td>5</td><td>6</td></tr>
            <tr><td>7</td><td>8</td><td>9</td></tr>
        </table>
        <input type="button" value="获取表格第一行的单元格数量" onclick="fun_get()">
    </div>
    </div>

    简单设置一下css样式

    div.box{width:300px;padding:20px;margin:20px;border:4px dashed #ccc;}
    div.box>span{color:#999;font-style:italic;}
    div.content{width:250px;margin:10px 0;padding:20px;border:2px solid #ff6666;}
    table{border-collapse:collapse;}
    td{width:80px;height:30px;line-height:30px;text-align:center;border:1px solid green;}

    编写jquery代码

    <script>
    function fun_get(){
    alert(document.getElementById('first').cells.length);
    }
    </script>

    观察效果

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-05-27
因为你这里a.cells 拿到的是这一行所有的cell对象的数组;你可以加个length拿到数量,或者遍历该对象数组,用每一个兑现inneHTML或者innerText拿到单元格内内容;
jq:
方法1:$("table>tbody:nth-child(1)>tr:nth-child(行数) >td:nth-child(列数)");
方法2:$("table tr:eq(行数-1) td:eq(列数-1)");
js:
方法1:document.getElementsByTagName("table的下标").childNodes[0].childNodes[行数-1].childNodes[列数-1]; //如果有caption标签 0变为1 先调用cleanWhitespaceDG去空格
方法2:document.getElementsByTagName("table的下标").rows[行数-1].cells[列数-1];
//还是要调用cleanWhitespaceDG去空格
第2个回答  推荐于2017-09-03
<script>

function m(a) {

alert(a)}

</script>

<body>

<table border="1" width="200">

<tr id="aa">

<td id="1" onclick="m(this.id)">a</td>

<td id="2" onclick="m(this.id)">b</td>

<td id="3" onclick="m(this.id)">>c</td>

<td id="4" onclick="m(this.id)">>d</td>

</tr>

</table>本回答被提问者采纳
相似回答