【发布时间】:2020-06-11 13:39:39
【问题描述】:
我有这个结构:
<input type=checkbox onclick="toggle(this, 'gr0');">
<input type=checkbox name=id[] id=gr0 value=$id> something1
<input type=checkbox name=id[] id=gr0 value=$id> something1
<input type=checkbox name=id[] id=gr0 value=$id> something1
<input type=checkbox name=id[] id=gr0 value=$id> something1
<input type=checkbox onclick="toggle(this, 'gr1');">
<input type=checkbox name=id[] id=gr1 value=$id> something2
<input type=checkbox name=id[] id=gr1 value=$id> something2
<input type=checkbox name=id[] id=gr1 value=$id> something2
<input type=checkbox name=id[] id=gr1 value=$id> something2
<input type=checkbox onclick="toggle(this, 'gr2');">
<input type=checkbox name=id[] id=gr2 value=$id> something2
<input type=checkbox name=id[] id=gr2 value=$id> something2
<input type=checkbox name=id[] id=gr2 value=$id> something2
<input type=checkbox name=id[] id=gr2 value=$id> something2
当我检查第一行 onclick 函数在哪里时,它应该选择所有名称为 id[] 和 id 'gr0' 的复选框(并取消选中我是否取消选中此“主”复选框 当我使用第二个/第三个主复选框执行此操作时相同,其中 onclick 函数是第二个值“gr1”或“gr2”
这个我试过了,还是不行:
<script>
function toggle(source, id_group) {
checkboxes = document.getElementsByName('id[]').getElementsById(id_group);
for(var i=0, n=checkboxes.length;i<n;i++) {
checkboxes[i].checked = source.checked;
}
}
</script>
你能帮帮我吗?
【问题讨论】:
-
ids 在文档中必须是唯一的。这是无效的 HTML。 -
那么实现我的目标的替代解决方案是什么?
-
将
class添加到要在组中选择的元素。然后使用document.getElementsByClassName()或document.querySelectorAll('.class-name')选择您需要的。
标签: javascript html checkbox onclick