gpt4 book ai didi

javascript 实现 "select all"复选框在 IE 中不起作用

转载 作者:行者123 更新时间:2023-11-28 02:01:43 25 4
gpt4 key购买 nike

我在网上找到了这段代码,在 Firefox 和 Chrome 上没问题,但在 IE 上不起作用,有人知道如何修复 IE 吗?

按钮的值确实会切换,但只是复选框无法更改

<html>

<head>
<script type="text/javascript">

function do_this(){

var checkboxes = document.getElementsByName('approve[]');
var button = document.getElementById('toggle');

if(button.value == 'select'){
for (var i in checkboxes){
checkboxes[i].checked = 'FALSE';
}
button.value = 'deselect'
}else{
for (var i in checkboxes){
checkboxes[i].checked = '';
}
button.value = 'select';
}
}
</script>
</head>

<body>
<input type="checkbox" name="approve[]" value="1" />
<input type="checkbox" name="approve[]" value="2" />
<input type="checkbox" name="approve[]" value="3" />

<input type="button" id="toggle" value="select" onClick="do_this()" />
</body>

</html>

最佳答案

将处理程序放在代码中而不是内联被认为是最佳实践。您可以保存一些代码,并将 onclick 处理程序放入您的代码中,如下所示:

// add event handler
function init() {
document.getElementById('toggle').onclick = function () {
do_this(this);
};
}
window.onload = init;

// me is the button here
function do_this(me) {
var checkboxes = document.getElementsByName('approve[]');
for (var i = 0; i < checkboxes.length; i++) {
// toggle to what it is not
checkboxes[i].checked = !checkboxes[i].checked;
}
me.value = me.value == 'select' ? 'deselect' : 'select';
}

示例 fiddle 以显示其实际效果:http://jsfiddle.net/qK2qS/

关于javascript 实现 "select all"复选框在 IE 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18346305/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com