javascript - 仅当取消选中所有复选框时,Bootstrap 4 才会折叠才能工作

标签 javascript jquery twitter-bootstrap bootstrap-4

如果选中任何一个/两个或全部三个复选框,我会尝试显示上传证明按钮,并且仅在取消选中所有复选框时才隐藏。

我该如何解决这个问题?

.container {
  margin-top: 30px;
}
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>
<div class="container">
<div class="row">
  <div class="col-12">
    <label class="checkbox"> Age<input type="checkbox" data-toggle="collapse" data-target="#proof"></label>
    <label class="checkbox"> Photo<input type="checkbox" data-toggle="collapse" data-target="#proof"></label>
    <label class="checkbox"> Address<input type="checkbox" data-toggle="collapse" data-target="#proof"></label>
  </div>
  <div class="12">
    <div class="collapse" id="proof">
      <a href="#" class="btn btn-block btn-primary">Upload Proof</a>
    </div>
  </div>
</div>
</div>

最佳答案

这是工作代码,我们可以检查选中的复选框的数量

<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>
<div class="container">
  <div class="row">
    <div class="col-12">
      <label class="checkbox"> Age<input type="checkbox" class="checkbox_class"></label>
      <label class="checkbox"> Photo<input type="checkbox" class="checkbox_class"></label>
      <label class="checkbox"> Address<input type="checkbox" class="checkbox_class"></label>
    </div>
    <div class="12">
      <div class="upload_proof hide">
         <a href="#" class="btn btn-block btn-primary">Upload Proof</a>
      </div>
    </div>
 </div>
</div>
<script>
  $(document).ready(function(){
    $("input[type='checkbox']").change(function(event) {
      if ($("input:checkbox:checked").length > 0)
      {
        if($(".upload_proof").hasClass("hide")){
           $(".upload_proof").removeClass("hide")
         }
      }else{
        if(! $(".upload_proof").hasClass("hide")){
          $(".upload_proof").addClass("hide")
        }
      }
    })
  })
</script>

希望对您有帮助。如有任何问题请告诉我。

关于javascript - 仅当取消选中所有复选框时,Bootstrap 4 才会折叠才能工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52000871/

相关文章:

javascript - AngularJS bootstrap datepicker - 星期几问题

javascript - 使用javascript中的数据链接下载大文件时出错

javascript - 用于 Web 组件/自定义事件 (JS) 的基于 HTML 的事件监听器

JavaScript 改变 HTML 元素的类

html - 如何将移动 css 查询应用于带有背景图像的 div?

javascript - "popover image"- 弹出图像后重新隐藏图像时遇到问题

javascript - 在 jQuery 中将 2 个函数合并为一个

jquery - 将 Div 定位在窗口高度以下

javascript - LocalStorage 不能在移动设备上使用吗?

javascript - 禁用透明 header-div 后面的 Bootstrap 按钮的点击