【发布时间】:2011-06-15 19:15:10
【问题描述】:
我有一个 javascript sn-p 循环遍历所有输入(表中的所有行),如果在一行中选中一个复选框,它会检查所有行中的所有复选框。
我实际上需要它来检查同一行中的第二个复选框,而不是所有行,所以我需要编辑 javascript sn-p,它会在其中递增
//loop through all inputs
for(i = 0; i < inputs.length; i++)
<script type="text/javascript">
var mainchecked = false;
function checkAll() {
//get all input elements
var inputs = document.getElementsByTagName('input');
//if the box is being checked
if(!mainchecked) {
//loop through all inputs
for(i = 0; i < inputs.length; i++) {
//does it have autocheck?
if(inputs[i].className == 'autocheck') {
//then check the box!
inputs[i].checked = "checked";
}
}
mainchecked = true;
} else {
//box is being unchecked, uncheck everything
for(i = 0; i < inputs.length; i++) {
inputs[i].checked = "";
}
mainchecked = false;
}
}
</script>
【问题讨论】:
-
你的问题到底是什么?
-
你能提供一个示例html页面吗? jsFiddle 是一个放置它的好地方......我不明白为什么你要一次循环遍历所有复选框,而你显然想要循环遍历行中的每个复选框,根据你的问题。
-
你会考虑使用 jQuery 吗?它可以在几行代码中完成。
-
我不需要遍历所有,只需遍历每一行。
" ?> ' javascript:checkAll()' />";?> -
在选中收藏夹的复选框时,它意味着您已读取该行,以便我希望它检查读取复选框,但仅在同一行中。我对 jQuery 持开放态度,但认为这将是 javascript 中的一个小修改。
标签: javascript loops increment