123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- /**
- * @author 张慧华 z@j-ui.com
- */
- (function($){
- $.fn.extend({
-
- checkboxCtrl: function(parent){
- return this.each(function(){
- var $trigger = $(this);
- $trigger.click(function(){
- var group = $trigger.attr("group");
- if ($trigger.is(":checkbox")) {
- var type = $trigger.is(":checked") ? "all" : "none";
- if (group) $.checkbox.select(group, type, parent);
- } else {
- if (group) $.checkbox.select(group, $trigger.attr("selectType") || "all", parent);
- }
-
- });
- });
- }
- });
-
- $.checkbox = {
- selectAll: function(_name, _parent){
- this.select(_name, "all", _parent);
- },
- unSelectAll: function(_name, _parent){
- this.select(_name, "none", _parent);
- },
- selectInvert: function(_name, _parent){
- this.select(_name, "invert", _parent);
- },
- select: function(_name, _type, _parent){
- var $parent = $(_parent || document),
- $checkboxLi = $parent.find(":checkbox[name='"+_name+"']");
- switch(_type){
- case "invert":
- $checkboxLi.each(function(){
- this.checked = !this.checked;
- });
- break;
- case "none":
- $checkboxLi.removeAttr('checked');
- break;
- default:
- $checkboxLi.each(function(){
- this.checked = true;
- });
- break;
- }
- $checkboxLi.trigger('change');
- }
- };
- })(jQuery);
|