仅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 = true
div.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 = true
frag.appendChild(input)
alert(input.checked) // IE6/7 false

 

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

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值