首页 > 网站 > WEB开发 > 正文

仅IE6/7中添加checked为true的input到DOM中为false

2024-04-27 14:22:25
字体:
来源:转载
供稿:网友

仅IE6/7中添加checked为true的input到DOM中为false

HTML INPUT元素有个checked属性,多数情况type为radio和checkbox。

当创建一个input,checked属性赋值为true,添加到DOM文档中,当再次取checked属性时,IE6、7竟然是false。

测试如下

var div = document.createElement('div')var input = document.createElement('input')input.type = 'checkbox'input.checked = truediv.appendChild(input)alert(input.checked) // IE6/7 false

使用文档碎片IE6/7依然是false

var frag = document.createDocumentFragment('div')var input = document.createElement('input')input.type = 'checkbox'input.checked = truefrag.appendChild(input)alert(input.checked) // IE6/7 false

解决方式:可以先把checked属性暂存下,比如加一个defaultChecked属性,添加到DOM后,再用defaultChecked赋值给checked属性。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表