Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 更改表格';s tr:即使背景颜色不同_Javascript_Css - Fatal编程技术网

Javascript 更改表格';s tr:即使背景颜色不同

Javascript 更改表格';s tr:即使背景颜色不同,javascript,css,Javascript,Css,我知道如何使用jquery,通过这样做: $(“#rateTable tr:even”).css(“背景”、“e7edea”) 但是,我使用的格式不允许jquery。我尝试了下面的代码,但它表示样式为空。有人知道我做错了什么吗 document.getElementById(“rateTable tr:even”).style.background=“#e7edea” 蓝色 绿色 红色 紫色 水鸭 黄色的 尝试使用querySelectorAll然后在收到的集合上迭代以更改背景。见下文: v

我知道如何使用jquery,通过这样做:

$(“#rateTable tr:even”).css(“背景”、“e7edea”)

但是,我使用的格式不允许jquery。我尝试了下面的代码,但它表示样式为空。有人知道我做错了什么吗

document.getElementById(“rateTable tr:even”).style.background=“#e7edea”

蓝色
绿色
红色
紫色
水鸭
黄色的

尝试使用
querySelectorAll
然后在收到的集合上迭代以更改背景。见下文:

var trToChange = document.querySelectorAll("#rateTable tr:nth-child(even)");

for(var i = 0; i < trToChange.length; i++){
    trToChange[i].style.background = "#e7edea";
}
var trToChange=document.queryselectoral(#rateTable tr:n个子项(偶数)”;
对于(变量i=0;i
这并不需要JavaScript。它可以在简单的CSS中使用

tr:n个子项(偶数){
背景:#E7EDEA;
}

蓝色
绿色
红色
紫色
水鸭
黄色的
您可以使用
#rateTable tr:n类型(偶数)
作为选择器来执行此操作
document.selectElementById()
仅当您为其指定用作id的确切字符串,而不是CSS选择器时才起作用。我会使用CSS,因为它会自动更新,速度可能更快,但如果您愿意,可以使用JS:

const evenRows=document.queryselectoral(#rateTable tr:n类型(偶数)”)
for(const row of evenRows)row.style.background=“#e7edea”

蓝色
绿色
红色
紫色
水鸭
黄色的
橙色
粉红色

getElementById
需要ID,而不是选择器。还有,你为什么不直接使用CSS呢
#rateTable tr:n个孩子(偶数){background:#e7edea}
应该是
document.queryselectoral(#rateTable tr:n个孩子(偶数)
。。。然后您需要循环遍历结果应该是
querySelectorAll(#rateTable tr:nth child(偶数)”)
如果需要动态更改怎么办?此实例不需要动态更改。我不知道我可以用CSS来做,所以这是完美的。谢谢