document.createElement("input")动态创建html元素时checkbox

最近研究createElement的时候发现一个奇怪的问题

var echkbox=document.createElement("input");
echkbox.setAttribute("type","checkbox");
echkbox.setAttribute("id","inputid");
echkbox.setAttribute("name","inputname");
echkbox.setAttribute("value","inputvalue");
echkbox.setAttribute("checked","checked");
var addhere=document.getElementById("someElementId");
addhere.appendChild(echkbox);
alert(document.getElementById("inputid").checked);
 

 

ie7显示出来的checkbox居然是未选中的但是alert出来的却是true,而FF一切正常
后来查了半天资料说是ie显示的时候只对状态改变比较敏感
改成

var echkbox=document.createElement("input");
echkbox.setAttribute("type","checkbox");
echkbox.setAttribute("id","inputid");
echkbox.setAttribute("name","inputname");
echkbox.setAttribute("value","inputvalue");
var addhere=document.getElementById("someElementId");
addhere.appendChild(echkbox);
echkbox.setAttribute("checked","checked");
alert(document.getElementById("inputid").checked);
 

 

一切ok
radio同样是这种情况

你可能感兴趣的:(JavaScript)