CheckboxSelectionModel



1.CheckboxSelectionModel简写sm
2.实现sm是否显示
后台传入的json对象包含selected属性

  1. { root:[
  2. { id: '1', code: '1001', name: '老李', sex: '1', age: '23', selected: false},
  3. { id: '2', code: '1002', name: '懒蛋', sex: '1', age: '25', selected: true}
  4. ]}

要实现此功能必须也处理全选问题

  1. var sm = new Ext.grid.CheckboxSelectionModel({
  2. checkOnly: true,
  3. /*
  4. 解决sm全选不选中不显示的sm
  5. */
  6. selectAll : function(){
  7. sm.clearSelections(); //清除全部的选区
  8. var storeLength = sm.grid.store.getCount();
  9. for( var i = 0; i < storeLength; i++){
  10. var record = sm.grid.store.getAt(i);
  11. //获取record中selected的值
  12. var selected = record.data[ 'selected'];
  13. if(!selected){
  14. var id = record.get( 'id');
  15. //传入一个id,根据id查询缓存里的Record,返回其索引
  16. var si = store.indexOfId(id);
  17. sm.selectRow(i, true);
  18. }
  19. }
  20. },
  21. /*
  22. 解决sm是否显示问题
  23. */
  24. renderer: function(v, p, record){
  25. //获取record中selected的值
  26. var selected = record.data[ 'selected'];
  27. if(!selected){
  28. //selected为false时候显示
  29. return '<div class="x-grid3-row-checker"> </div>';
  30. } else{
  31. //selected为true显示空
  32. return '';
  33. }
  34. }
  35. });

3.sm配置项

  1. var sm = new Ext.grid.CheckboxSelectionModel({
  2. //只允许用户通过复选框执行选中操作
  3. handleMouseDown : Ext.emptyFn,
  4. //true表示只允许选择单行
  5. singleSelect : true
  6. });
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值