我正在尝试遍历表格中的所有单元格并对值进行比较。
var table = document.getElementById("assignedvlans");
alert(table);
alert($('#assignedvlans tbody tr').length);
for (var i = 0, cell; cell = table.cells[i]; i++) {
//iterate through all cells in table.
alert('in the loop');
alert(cell.val());
if (cell.val == IdforVlanToAdd)
{
alert('This vlan is already associated with the port.');
$bexit = true;
break;
}
}
当我测试此代码时,警报(表格)代码正在运行 - 它返回“对象 HTMLTableElement”并且表格长度的警报返回 4,这也是正确的。但是循环内的警报语句永远不会发生。你能告诉我循环控制哪里出了问题吗?谢谢。
原文由 dot 发布,翻译遵循 CC BY-SA 4.0 许可协议
table
包含rows[]
,它们本身包含cells[]
。您无法直接从cells[]
获取table
。如果没有嵌套表,您可以使用
table.getElementsByTagName('td')
作为快捷方式。否则,您应该循环遍历每个
rows[]
并且在该循环中您可以循环遍历cells[]
。