Ext.grid.CheckboxSelectionModel 修复 checkbox bug

全选和取消选择的控制,扩展CheckboxSelectionModel即可, 对JS语法不太熟悉,琢磨了好久才完成.

Merry Christmas! 

if (Ext.grid.CheckboxSelectionModel) {
 var interceptOnMouseDown = Ext.grid.CheckboxSelectionModel.prototype.onMouseDown.createInterceptor(function(e, t){
   this.on('rowdeselect', this.handleDeselect, this);
   this.on('rowselect', this.handleSelect, this);   
  } 
 );
 
 Ext.override(Ext.grid.CheckboxSelectionModel, {
  hd : null,     
    onMouseDown : interceptOnMouseDown,     
    handleSelect:function(){
      if(this.grid.store.getCount()!=this.selections.length)
    return; 
    var hd = Ext.fly(this.grid.getView().innerHd).child('div.x-grid3-hd-checker');
      if(!hd.hasClass('x-grid3-hd-checker-on'))  
      hd.addClass('x-grid3-hd-checker-on');
    },   
    handleDeselect:function(){
      if( this.grid.store.getCount() != this.selections.length +1)
    return; 
      var hd = Ext.fly(this.grid.getView().innerHd).child('div.x-grid3-hd-checker'); 
      if(hd.hasClass('x-grid3-hd-checker-on'))
       hd.removeClass('x-grid3-hd-checker-on');
    }
 }); 
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值