如何使用JavaScript访问HTML表格每行的第二个单元格
问题原因
你的代码存在两处逻辑错误:
- 内层循环已经遍历到了单个单元格DOM对象,对单个对象取
[1]索引没有意义,这是输出全为undefined的核心原因 - 不需要嵌套内层循环,每行的
cells本身就是类数组集合,直接取索引1(数组从0开始计数,第二个单元格对应索引1)即可
可行实现
如果你需要包含表头行的第二个单元格(即Column B的<th>元素),可以用以下代码:
const table = document.querySelector("table"); for (const row of table.rows) { console.log(row.cells[1]); }
如果你只需要获取tbody内数据行的第二个单元格,排除表头,使用以下代码即可得到你预期的输出:
const table = document.querySelector("table"); // 仅遍历tbody内的行 for (const row of table.tBodies[0].rows) { console.log(row.cells[1]); // 如果需要拿单元格内的文本内容,改为取 row.cells[1].textContent 即可 }
内容的提问来源于stack exchange,提问作者Jackson Tai
相关产品推荐
相关产品推荐

