javascript 对于element赋值后,即便值是boolean,也会被处理掉。如果用==false等去判断,对得到意想不到的结果。
网语说,一言不合上代码,不想说太多废话。
<body>
<input type="hidden" id="myElement" value=""/>
</body>
<script>
var myBoolean = false;
alert (myBoolean==false);
alert (myBoolean==true);
alert ("BEFORE SET empty is false: "+(document.getElementById("myElement").value==false));
alert ("BEFORE SET empty is true: "+(document.getElementById("myElement").value==true));
document.getElementById("myElement").value=false;
alert ("AFTER SET false is false: "+(document.getElementById("myElement").value==false));
alert ("AFTER SET false is true: "+(document.getElementById("myElement").value==true));
document.getElementById("myElement").value=true;
alert ("AFTER SET true is false: "+(document.getElementById("myElement").value==false));
alert ("AFTER SET true is false: "+(document.getElementById("myElement").value==true));
document.getElementById("myElement").value="";
alert ("after setback to empty is false: " +(document.getElementById("myElement").value==false));
alert ("after setback to empty is true: " +(document.getElementById("myElement").value==true));
</script>