我使用 JavaScript 动态生成弹出窗口(使用 AJAX 显示)的复选框,并且在单击按钮时我还需要调用一个函数,在呈现弹出窗口之前检查所有复选框。
使用的所有页面都是 JSP,并且还使用标记包含弹出窗口,因此在加载父页面时已经生成了弹出窗口。
问题是我能够在 IE7 和 IE8 中使用相同的函数检查所有自定义生成的复选框。但它不适用于 IE6。
我正在使用类似的东西:
var i;
for(i=0; i<size; i++){
document.getElementById('chk'+i).checked = true;
}
最佳答案
即使在 IE6 中(老实说,这是一个非常糟糕的浏览器),该代码也应该可以正常工作。
但是,如果您已将这些复选框动态插入到页面中,则 IE6 会存在动态添加复选框的已知问题,即它不遵守 .checked
属性。
请参阅此页面了解一些可能的解决方案:http://bytes.com/topic/javascript/insights/799167-browser-quirk-dynamically-appended-checked-checkbox-does-not-appear-checked-ie
希望有帮助。 :-)
(但我的解决方案是:不支持 IE6。老实说,它的使用率现在已经下降到百分之几并且还在下降,所以除非它更适合您的特定人群,否则就减少损失并放弃它;剩余用户很快就会升级。;-))
关于javascript - IE6 中的复选框问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4376079/