我有一个页面上有很多元素,如下所示:
<tr class="blah" style="Display:none;">
当我遇到像上面这样的元素时,我想对它进行一些处理。我遇到的问题是“if子句”永远不会返回真值。警报将显示“无”(不带引号)。我希望“if子句”评估为true。我尝试使用“==”并在显示后添加“.ToString()”。这不起作用。
var rows = document.getElementsByTagName("tr");
for(var i=0; i < rows.length; i++) {
alert(rows[i].style.display);
if (rows[i].style.display === "none") {
//Do some stuff
//Code never gets here.
}
}
为什么“if子句”中的比较总是评估为false?
答案 0 :(得分:0)
它完全适合我的代码,尝试在if子句之后放置一个警告。
只是推荐,使用显示而不是显示
<tr class="blah" style="display:none;">
答案 1 :(得分:0)
我在jsfiddle中尝试了你的代码,它运行正常,请查看http://jsfiddle.net/HygdL/
var rows = document.getElementsByTagName("tr");
for(var i=0; i < rows.length; i++) {
if (rows[i].style.display === "none") {
alert('okay, its works!');
}
}