多选择复选框的Javascript验证

多选择复选框的Javascript验证,javascript,dom,Javascript,Dom,我想创建一个警报,如果我的复选框中没有显示任何选项,则会显示该警报 <script> function mFunction () { if (!!this.form.checkbox.checked) { alert('not checked'); return false; } }; </script> 函数mFunction(){ 如果(!!this.form.checkbox.checked){ 警报(“未检查”); 返回false;

我想创建一个警报,如果我的复选框中没有显示任何选项,则会显示该警报

<script>

function mFunction () {
  if (!!this.form.checkbox.checked) {
    alert('not checked');
    return false;
  }
};
</script>

函数mFunction(){
如果(!!this.form.checkbox.checked){
警报(“未检查”);
返回false;
}
};
以上js

<body>

<form>
  <input type="checkbox" name="choice1" value="choice1" id="confirm">choice 1<br>
  <input type="checkbox" name="choice2" value="choice2" >choice 2<br>
  <input type="checkbox" name="choice3" value="choice3">choice 3<br><br>
  <input type="submit" value="Submit" onclick="mFunction()"> 
</form>

选择1
选择2
选择3


如果未选择任何内容,我需要一个警报,如果选择了某个内容,则不需要警报。

如果是纯javascript,您可以尝试在单击复选框时添加事件侦听器

在侦听器中维护一个数组。如果选择了某项内容,则维护复选框选择计数器或布尔跟踪选择

 var checkbox = document.querySelector("input[name=checkbox]");

checkbox.addEventListener( 'change', function() {
 if(this.checked) {
    // Checkbox is checked..
 } else {
    // Checkbox is not checked..
 }
});

您可以像下面这样直接检查已检查的项目

   function mFunction () {
    let matches = document.querySelectorAll('input[type=checkbox]:checked');
    if (matches.length < 1) {
        alert('not checked');
        return false;
    }
   };
函数mFunction(){
让matches=document.querySelectorAll('input[type=checkbox]:checked');
如果(匹配长度<1){
警报(“未检查”);
返回false;
}
};
您可以通过

[...document.querySelectorAll("input[type='checkbox']")].some(i=>i.checked)
函数mFunction(e)
{  
if(![…document.queryselectoral(“输入[type='checkbox']”)。一些(i=>i.checked))
{
警报(“未检查”);
e、 预防默认值();
}
};
函数校验表(t,e){
e、 预防默认值();
console.log('checked');
};

选择1
选择2
选择3


您的问题是如何从函数中访问复选框?或者你到底被困在哪里了。
checkForm
的作用是什么?在这种情况下,用户只会选择一个选项,而不是多个,也不是零个?如果是,切换到单选按钮。