js实现全选和取消全选

HTMl

     <input type="checkbox" name="allCheckBox" />

     <br/>

      <input type="checkbox" name="checkbox" />

       <input type="checkbox" name="checkbox" />

      <input type="checkbox" name="checkbox" />

js
<script>
    // $().attr('data-id')
    // $().data('id')
    //判断全选 或者 全不选
$('input[name="allCheckBox"]').click(function(){
  if($(this).is(':checked')){
    $('input[name="checkbox"]').each(function(){
      //此处如果用attr,会出现第三次失效的情况
      $(this).prop("checked",true);
    });
        var num=0;
        $('.jr').each(function(){
            num += parseFloat($(this).text());
        });
        $('#J_Total').text(num);



  }else{
    $('input[name="checkbox"]').each(function(){
      $(this).prop("checked",false);
    });
        $('#J_Total').text('0.00');
  }
});

//判断当全选时 若有一个不选 全选按钮为不选状态
$('input[name="checkbox"]').click(function(){
  var checkedLength = $("input[name='checkbox']:checked").length;
  var checkLength = $("input[name='checkbox']").length;
    var cont = 0;
    $("input[name='checkbox']:checked").each(function(){
        cont +=parseFloat($(this).parents('.td-chk').siblings('.td-sum').find('.jr').text());
    });
    $('#J_Total').text(cont);

  if(checkLength == checkedLength){
      $("input[name='allCheckBox']").prop("checked",true);
      return true;
    }else{
      $("input[name='allCheckBox']").prop("checked",false);
      return true;
    }
})
</script>
posted @ 2020-08-13 14:49  不吃肉的羊  阅读(800)  评论(0编辑  收藏  举报