[英]Change style of table cells on click
我想在单击按钮时更改特定表格单元格的颜色。
<button onclick="highlight()">Toggle highlighting</button>
和JS:
function highlight() {
var x = document.getElementsByClassName('best');
for (var i = 0; i < x.length; i++) {
x.get(i).style.color = "green";
}
}
我将要更改的表单元格添加到“最佳”类中,但是单击按钮时,没有任何变化。 我首先尝试将它们全部分配给一个ID,然后使用document.getElementById('best').style.color = "green";
,但这只会更改ID为“ best”的第一个元素,而不是全部。 highlight()
应该是什么样子?
您不需要在那里使用x.get(i)
。 只需使用x[i]
访问元素
请参见以下代码:
function highlight() {
var x = document.getElementsByClassName('best');
for (var i = 0; i < x.length; i++) {
x[i].style.color = "green";
}
}
首先,我建议在使用像这样的nodeList时使用Java脚本内置的forEach()函数,因为发生错误的可能性较小:
bestElements.forEach(best => {
best.style.color = "green";
});
其次,我相信您可能正在寻找background-color
属性,而不是color
属性,如果您要更改整个单元格的颜色。
bestElements.forEach(best => {
best.style.backgroundColor = "green";
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.