//allow a group selector override option var grp_slctr = (settings.groupSelector==null) ? "input[name="+settings.groupName+"]" : settings.groupSelector;
//grab only enabled checkboxes if required if(settings.enabledOnly) { grp_slctr += ":enabled"; }
//attach click event to the "check all" checkbox(s) ctrl_box.click(function(e){ chk_val=(e.target.checked); $(grp_slctr).attr("checked",chk_val); //if there are other "select all" boxes, sync them ctrl_box.attr("checked",chk_val); }); //attach click event to checkboxes in the "group" $(grp_slctr).click(function(){ if(!this.checked) { ctrl_box.attr("checked",false); } else { //if # of chkbxes is equal to # of chkbxes that are checked if($(grp_slctr).size()==$(grp_slctr+":checked").size()){ ctrl_box.attr("checked","checked"); } } }); //make this function chainable within jquery return this; }; })(jQuery); 主要看下面的使用方法: 复制代码 代码如下: <input type="checkbox" class="checkall">checkall<br> <input class="groupclass" name="group" type="checkbox">chk1<br> <input class="groupclass" name="group" type="checkbox">chk2<br> <input class="groupclass" name="group" type="checkbox">chk3<br> <input class="groupclass" name="group" type="checkbox">chk4<br> <input type="checkbox" class="checkall" id="checkall"> <?php $(function() { $("#checkall").click(function() { $(".checkall").checkgroup({groupSelector:".groupclass",enabledOnly:true}); }); });