无法制作复选框

时间:2017-11-09 14:24:35

标签: javascript jquery html css bootstrap-4

我正在寻找有关制作所需复选框的帮助。

我构建了一个基于bootstrap 4的表单。我通过引导文档中的JS示例验证表单,添加" novalidate"形成,添加"必需"输入,并添加以下脚本:

  (function() {
  'use strict';
   window.addEventListener('load', function() {
    var form = document.getElementById('forms');
     form.addEventListener('submit', function(event) {
      if (form.checkValidity() === false) {
      event.preventDefault();
      event.stopPropagation();
       }
      form.classList.add('was-validated');

      }, false);
      }, false);
  })();

一切顺利,但现在我有一些复选框,我想只在用户检查至少一个时验证它。我想知道,如果我应该做一个不同的功能来验证这个,或建立在当前的。无论哪种情况,如果有人能帮助我,我将非常感激。

这是复选框的代码:

    <div class="form-row">
<div class="form-group col-md-4">
  <label for="checkboxes">Indícios:</label>
  <div class="form-check">
  <label class="form-check-label">
    <input class="form-check-input" id="" type="checkbox" value="1">
    1
  </label>
</div>

  <div class="form-check">
  <label class="form-check-label">
    <input class="form-check-input" type="checkbox" value="2">
    2
  </label>
</div>

  <div class="form-check">
  <label class="form-check-label">
    <input class="form-check-input" type="checkbox" value="3">
    3
  </label>
</div>

  <div class="form-check">
  <label class="form-check-label">
    <input class="form-check-input" type="checkbox" value="4">
    4
  </label>
</div>

  <div class="form-check">
  <label class="form-check-label">
    <input class="form-check-input" type="checkbox" value="5">
    5
  </label>
</div>
</div>

<div class="form-group col-md-4">

<label for="checkboxes1">&nbsp</label>
  <div class="form-check">
  <label class="form-check-label">
    <input class="form-check-input" type="checkbox" id="checkboxes1" value="6">
    6
  </label>
</div>

  <div class="form-check">
  <label class="form-check-label">
    <input class="form-check-input" type="checkbox" value="7">
    7.
  </label>
</div>

  <div class="form-check">
  <label class="form-check-label">
    <input class="form-check-input" type="checkbox" value="8">
    8
  </label>
</div>

  <div class="form-check">
  <label class="form-check-label">
    <input class="form-check-input" type="checkbox" value="9">
    9
  </label>
</div>

</div>
</div>

提前感谢!

1 个答案:

答案 0 :(得分:1)

既然你提到你在这里使用jQuery是一个函数,你可以添加checkValidity方法

function checkCheckboxes = function() {
    return ($('.form-check-input:checked').length > 0);
};

此函数检查是否有任何带有.form-check-input类的输入,并且html中有:checked状态。如果是,则复选框验证有效。