嘿伙计们试图找到一个复选框方案,我有7个盒子,我试图得到一个逻辑声明,它的工作原理。我有7个复选框,第7个框是以上所有,当点击以上所有内容时,它取消选择所有以前的选项,当选择1-6时,它取消选择上面的所有框。最终发生在我当前的代码中它取消选择所有1-6个框然后他们现在无法点击。不幸的是,我有点受限制。所以我会粘贴我的代码任何帮助非常感谢。
这是一个非常可怕的编码片段,我只是在一起尝试这一点,而我正尝试多种方式让它发挥作用。
if (document.forms[0].propDetails[6].checked==true) {
for (var x=0;x<6;x++) {
document.forms[0].propDetails[x].checked=false;
}
}
else {
document.forms[0].propDetails[6].checked=false;
}
} // end of function
答案 0 :(得分:1)
我首先建议您为1-6复选框指定一个特定的NAME属性,并使用getElementsByName解析它们,如下所示:
<input type="checkbox" id="myChk1" name="myChk" />
...
<input type="checkbox" id="myChk6" name="myChk" />
<input type="checkbox" id="myChkAll" onchange="chkAll(this);" />
<script type="text/javascript">
function chkAll(obj) {
var isChecked = obj.checked;
var chk1to6 = document.getElementsByName('myChk');
for (var i = 0 ; i < chk1to6.length ; i++) {
chk1to6[i].checked = isChecked;
}
}
</script>
答案 1 :(得分:0)
为所有复选框提供不同的唯一ID 喜欢
chckbx1
chckbx2
chckbx3
。
chckbx7
在单击该复选框的对象的任何复选框时调用相同的函数
即。 onclick=functionname(this);
在功能方面检查id
functioname(str){
if(str.id=="chckbx7"){
//deselect all except chckbx7
}
else{
//deselect chckbx7
}
}