javascript - 使用 javascript/jquery 选中/取消选中复选框时从计数中添加和删除?

标签 javascript jquery

我对 JS 比较陌生,所以我对此有点困惑:

假设我有 40 个复选框,但用户最多只能选择 10 个。

我设置了复选框,标记为 checkbox1checkbox2 等,最多 40 个。用户不能选择超过 10 个。我该怎么做呢?

我想这样做的方式是这样的,但我不确定这是否可行,因为显然有 40 个字段然后如果他们取消选中一个怎么办?

function checkValidation() {
  if (document.getElementById('checkbox1').isChecked()) {
    document.getElementById('validation').value() + 1;
  }
}

所以每次检查时,它都会将 1 添加到文本框验证,然后我可以做一个 if 语句来说明如果 validation.value() > 8 然后警告说他们可以'不要再检查了。
我认为这不是最好的方法,就好像他们取消选中该框一样,我的功能不会考虑到这一点?

希望这是有道理的,如果有任何需要澄清的地方,请告诉我,我可以进一步解释。

最佳答案

尝试以下方式:

$('#myBtn').click(function(){
  var countCheckd = $('input[type=checkbox]:checked').length;
  if(countCheckd >= 3){   
    console.log('You have 3 or more checked: ' +countCheckd);
  }
  else{
    console.log('You have less than 3 checked: ' +countCheckd);
  }
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" />1
<input type="checkbox" />2
<input type="checkbox" />3
<input type="checkbox" />4
<input type="checkbox" />5

<br><br>
<input type="button" id="myBtn" value="Check"/>

关于javascript - 使用 javascript/jquery 选中/取消选中复选框时从计数中添加和删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48059706/

相关文章:

javascript - 在中间人构建执行上运行 gulp 任务

javascript - 简单的 Javascript 更新 HTML 中的长计算进度

javascript - 如何在 AngularJS 中使用 $location.path 重定向之间的动画?

jquery - 如何在带有空格的类中使用jquery选择器?

javascript - 无法使用带有 TypeScript 的 React Native 找到变量符号

javascript - 如何使用键将两个数组组合成一个对象

javascript - Bootstrap 多选 : clicking on dropdown disables all input and button elements on panel

javascript - 当以特定方式单击图标时,为什么我的网页的一部分会消失?

jquery从css中提取值

javascript - .toFixed() 将值设置为零