该代码不应在下一页(http://plnkr.co/edit/lyq6MUBtY4jHg4l1IPlm?p=preview)
let table = document.body.firstElementChild;
for (let i = 0; i < table.rows.length; i++) {
let row = table.rows[i];
row.cells[i].style.backgroundColor = 'red';
将所有单元格涂成红色?如何确保只有选定的?
答案 0 :(得分:1)
您可以使用CSS选择器来收集所有td
元素
const tds = document.body.firstElementChild.querySelectorAll('td');
for (let i = i; i < tds.length; i++) {
tds.style.backgroundColor = 'red';
}
如果要确保只有所选内容,可以使用数据属性为它们分配一个唯一的ID,然后创建一个数据结构,以ID跟踪每个单元格的状态
答案 1 :(得分:-1)
您忘记了单元格也是数组:
let table = document.body.firstElementChild;
for (let i = 0; i < table.rows.length; i++) {
let row = table.rows[i];
for (let j = 0; j < row.cells.length; j++) {
row.cells[j].style.backgroundColor = 'red';
}
}
您所做的是使用行索引选择单元格索引。