作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下代码可以切换选择具有特定名称的所有复选框。
该代码在基于 webkit 的浏览器中运行良好,但在 IE8 中根本不起作用。
选择全部切换,不会选择任何内容。
<label class="checkbox">
<input name="product" type="checkbox" id="7553" value="true" title="option1">
option1
</label>
<label class="checkbox">
<input name="product" type="checkbox" id="65693" value="true" title="option2">
option2
</label>
<label class="checkbox">
<input type="checkbox" onClick="toggle(this)"><strong>Select all</strong>
</label>
这是 JS
<script type="text/javascript">
function toggle(source) {
checkboxes = document.getElementsByName('product');
for(var i in checkboxes)
checkboxes[i].checked = source.checked;
}
</script>
有人能明白为什么上述内容在 IE8 中不起作用吗?
谢谢
最佳答案
可能是因为您永远不应该在数组(或者在本例中为类似数组的对象)上使用 for..in
。
试试这个:
for( var i=0, l=checkboxes.length; i<l; i++) {
checkboxes[i].checked = source.checked;
}
关于用于选择复选框的 Javascript 代码在 IE8 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15950883/
我是一名优秀的程序员,十分优秀!