使用Javascript取消选中所有其他复选框
我有以下代码:使用Javascript取消选中所有其他复选框,javascript,Javascript,我有以下代码: <div class="formControls"> <label for="gdpr0" class="checkbox-inline"> <input type="checkbox" name="form[gdpr][]" value="email" id="gdpr0" onchange="GDPRcheck();" class="gdpr-option rsform-checkbox">By email</label>
<div class="formControls">
<label for="gdpr0" class="checkbox-inline">
<input type="checkbox" name="form[gdpr][]" value="email" id="gdpr0" onchange="GDPRcheck();" class="gdpr-option rsform-checkbox">By email</label>
<label for="gdpr1" class="checkbox-inline">
<input type="checkbox" name="form[gdpr][]" value="phone" id="gdpr1" onchange="GDPRcheck();" class="gdpr-option rsform-checkbox">By phone</label>
<label for="gdpr2" class="checkbox-inline">
<input type="checkbox" name="form[gdpr][]" value="post" id="gdpr2" onchange="GDPRcheck();" class="gdpr-option rsform-checkbox">By post</label>
<label for="gdpr3" class="checkbox-inline">
<input type="checkbox" name="form[gdpr][]" value="none" id="gdpr3" onchange="GDPRcheck();" class="gdpr-option rsform-checkbox">None</label>
<p class="formDescription">Please check all methods by which you are happy to be contacted.</p>
</div>
通过电子邮件
通过电话
邮寄
没有一个
请检查所有您乐于联系的方法
我要寻找的是正确的javascript,如果选中了“none”选项,就可以取消选中任何/所有其他选项,以确保人们不能选中none和其他选项。我打算使用一个名为GDPRcheck()的函数来完成此操作。首先,您需要在
GDPRcheck
函数中传递this
,以便可以在函数中引用单击的元素,然后使用querySelectorAll
获取所有复选框。然后,设置一个条件,该条件将取消选中除无
复选框之外的所有其他复选框(当选中时)
功能GDPRcheck(elem){
如果(元素值==‘无’){
document.querySelectorAll('[id^=“gdpr”]').forEach(函数(chkBox){
if(elem.checked&&chkBox.value!=“无”){
chkBox.checked=false;
}
});
}否则{
var noneChkBox=document.getElementById('gdpr3');
如果(非chkbox.checked){
noneChkBox.checked=false;
}
}
}
通过电子邮件
通过电话
邮寄
没有一个
请检查所有您乐于联系的方法
做你的研究,寻找与此相关的主题,然后试一试。如果你在做了更多的研究和搜索后陷入困境,无法摆脱困境,请发布一份你的尝试,并明确指出你陷入困境的地方。人们会乐意帮忙的。祝你好运明白了,谢谢。谢谢。如果我选择其他选项,然后选择“无”,这会起作用,但是如果我选择“无”,或者它已经被选中,它仍然允许我选择其他选项之一。如果选择了任何其他选项,是否有办法使其也取消选中“无”?所以他们可以从电子邮件、电话和邮件中选择任何一种,也可以不选择?