新版本的jquery checkbox 全选反选代码只能执行一遍,第二次就失败attr与prop区别

$("#all_check").click(function() {
        $("input[name='checkShop[]']").attr("checked",this.checked); 
    });
    var $subBox = $("input[name='checkShop[]']");
    $subBox.click(function(){
    $("#all_check").attr("checked",$subBox.length == $("input[name='checkShop[]']:checked").length ? true : false);
     });

这样代码只能执行一遍,第二次就失败

需要如下把attr换成prop

$("#all_check").click(function() {
        $("input[name='checkShop[]']").prop("checked",this.checked); 
    });
    var $subBox = $("input[name='checkShop[]']");
    $subBox.click(function(){
    $("#all_check").prop("checked",$subBox.length == $("input[name='checkShop[]']:checked").length ? true : false);
     });

为什么要这样做?自己看jq手册上写prop说明

原文地址:https://www.cnblogs.com/lichuntian/p/4757912.html