text: /**
   * @author ZhangHuihua@msn.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){
              $parent = $(_parent || document);
              $checkboxLi = $parent.find(":checkbox[name='"+_name+"']");
              switch(_type){
                  case "invert":
                      $checkboxLi.each(function(){
                          $checkbox = $(this);
                          $checkbox.attr('checked', !$checkbox.is(":checked"));
                      });
                      break;
                  case "none":
                      $checkboxLi.attr('checked', false);
                      break;
                  default:
                      $checkboxLi.attr('checked', true);
                      break;
              }
          }
      };
  })(jQuery);
  