Javascript在选中其他复选框时选中复选框 我有2个复选框,考虑CHK1和CHK2。如果选中一个复选框,则应自动选中第二个复选框,而不是相反。javascript应该是什么?有人能帮我吗?谢谢

Javascript在选中其他复选框时选中复选框 我有2个复选框,考虑CHK1和CHK2。如果选中一个复选框,则应自动选中第二个复选框,而不是相反。javascript应该是什么?有人能帮我吗?谢谢,javascript,html,Javascript,Html,这里有一个简单的内联版本来演示总体思路。在实际使用中,您可能希望将其拉入一个单独的函数中 如果您希望chk2自动与chk1的任何更改保持同步,但在单击chk2时不执行任何操作,请执行此操作 <input id="chk1" type="checkbox" onclick="document.getElementById('chk2').checked = this.checked;"> <input id="chk2" type="checkbox"> 此版本仅

这里有一个简单的内联版本来演示总体思路。在实际使用中,您可能希望将其拉入一个单独的函数中

如果您希望chk2自动与chk1的任何更改保持同步,但在单击chk2时不执行任何操作,请执行此操作

 <input id="chk1" type="checkbox" onclick="document.getElementById('chk2').checked = this.checked;">
 <input id="chk2" type="checkbox">

此版本仅在选中chk1时更改chk2,而在未选中ck1时不执行任何操作

 <input id="chk1" type="checkbox" onclick="if (this.checked) document.getElementById('chk2').checked = true;">
 <input id="chk2" type="checkbox">

对于第一个:

document.getElementById('chk1').checked = document.getElementById('chk2').checked;
关于第二个问题:

document.getElementById('chk2').checked = document.getElementById('chk1').checked;

“不是反之亦然”是什么意思?我想他的意思是检查ck2不会切换chk1。@John。这就是我所想的,但这可能意味着他只希望自动检查
chk2
,而不是自动检查。@Jordan-我更新了我的答案,因此它解决了这两种情况。答案很好,因为onclick很重要(
onchange
在焦点被移除之前不会触发,但如果用户使用空格键,或者触发了
onclick
?,那么最好将两者都放进去。)我做了一个快速测试,空格键在Firefox和IE中触发了它。如果你不想在取消选中ck1时取消选中ck2,这个解决方案会起作用。当你取消选中ck1时,OP想要发生什么(如果有的话)还不清楚。
document.getElementById('chk2').checked = document.getElementById('chk1').checked;