以下代码行生成一个空的警告框:
alert (document.getElementById(x).style.backgroundColor);
当然,这只是一个控件,然后在if子句中使用背景颜色。
字符串变量x包含表数据单元的id< TD>< / TD>
x肯定存在。当我用另一个样式属性测试它时,该行有效,例如document.getElementById(x).style.height。
表格单元格x也具有定义的背景颜色。它设置在
javascript with
document.getElementById(x).style.backgroundColor = #00FF55
我还测试过像#34; lime"这样的颜色名称,但无济于事。 使用javascript设置背景颜色有效,阅读它不起作用。
我还测试了示例here,它有效,所以它不是我的浏览器的问题。
我在一个工作日的大部分时间里做了很多工作,仍然不知道。
答案 0 :(得分:0)
document.getElementById(x).style.backgroundColor = #00FF55
SyntaxError:无效或意外的令牌。
字符串文字必须包含"
或'
。
document.getElementById("x").style.backgroundColor = "#00FF55";
您未能设置该值,因此当您尝试将其读回时,它仍未设置。
答案 1 :(得分:0)
ID的名称和=
后面的值都必须被"..."
答案 2 :(得分:0)
找到答案:
我最初在(php创建的)HTML中定义了单元格背景颜色:
<td ID ="x" name="nx" bgcolor=#00FF55 style="overflow: visible; border-left:1px solid grey"></td>
我在阅读这里的注释后尝试在引号中设置十六进制值,但HTML语法中甚至不允许这样做。
当通过javascript更改背景颜色时,它被设置为样式属性,这是有效的。 但是,将设定的颜色作为样式读取则没有。
我之前尝试过这个解决方案,从一开始就将颜色设置为样式,但由于这会导致表格的不必要行为,我将其丢弃。现在我重新编写了创建代码的表,并实现了将颜色设置为样式属性,一切都成功了。
我仍然认为在设置它们时,即使是HTML,也应该可以读取背景颜色。