var sm = new Ext.grid.CheckboxSelectionModel({singleSelect : false,renderer:function(v, p, record)
                        {
                       
                       
                          if (record.get('ITEMNAME') == '总计:'){  
                               return '';  
                          }  
                          return '<div class="x-grid3-row-checker"> </div>';                        
                        },
                      onHdMouseDown : function(e, t) {  
                          if (t.className == 'x-grid3-hd-checker') {  
                               e.stopEvent();  
                               var hd = Ext.fly(t.parentNode);  
                               var isChecked = hd.hasClass('x-grid3-hd-checker-on');  
                               if (isChecked){  
                                  hd.removeClass('x-grid3-hd-checker-on');  
                                  this.clearSelections();  
                              }else {  
                                  hd.addClass('x-grid3-hd-checker-on');  
                                  if (this.locked){  
                                      return;  
                                  }  
                                  this.selections.clear();  
                                  for (var i = 0, len = this.grid.store.getCount(); i < len; i++ ){  
                                      if (this.grid.store.getAt(i).data["ITEMNAME"] != '总计:'){  
                                           this.selectRow(i, true);  
                                      }  
                                 }  
                              }  
                         }  
                      },                        
                  handleMouseDown : function(g, rowIndex, e){  
                        if (e.button !== 0 || this.isLocked()) {  
                               return;  
                        }  
                        var view = this.grid.getView();  
                        if (e.shiftKey && !this.singleSelect && this.last != false ) {  
                             var last = this.last;  
                             this.selectRange(last, rowIndex, e.ctrlKey);  
                             this.last = last;  
                             view.focusRow(rowIndex);  
                        }else{  
                             var isSelected = this.isSelected(rowIndex);  
                             if (e.ctrlKey && isSelected) {  
                                  this.deselectRow(rowIndex);  
                             }else if(!isSelected || this.getCount() > 1){  
                                  if(this.grid.store.getAt(rowIndex).data["ITEMNAME"] != '总计:'){  
                                      this.selectRow(rowIndex, e.ctrlKey || e.shiftKey);  
                                  }  
                                  view.focusRow(rowIndex);  
                             }  
                        }  
                  }                                       
             });

ExtJs 使用点滴 十四 通过设置CheckboxSelectionModel属性值来实现GridPanel复选框可用不可用的更多相关文章

  1. extjs 中动态给gridpanel 复选框赋值

    最近在搞extjs时需要动态根据数据给gridpanel的复选框赋值 网上看了很多 ,多不行,最后找到一个好使的方法 如下: RBACformPanel.getSelectionModel().sel ...

  2. ExtJS表格——行号、复选框、选择模型

    本篇的内容是为表格添加行号,和复选框,最后谈一下Ext的选择模型.内容比较简单,就直接上代码了.一. 设置行号   行号的设置主要问题在于删除某一行后需要重新计算行号  Ext.onReady(fun ...

  3. 无废话ExtJs 入门教程十四[文本编辑器:Editor]

    无废话ExtJs 入门教程十四[文本编辑器:Editor] extjs技术交流,欢迎加群(201926085) ExtJs自带的编辑器没有图片上传的功能,大部分时候能够满足我们的需要. 但有时候这个功 ...

  4. DOM(十)使用DOM设置单选按钮、复选框、下拉菜单

    1.设置单选按钮 单选按钮在表单中即<input type="radio" />它是一组供用户选择的对象,但每次只能选一个.每一个都有checked属性,当一项选择为t ...

  5. LabVIEW(十四):VI属性

    1.VI的属性在项目研究中是很常用的,但是会经常忽略VI的属性设置,建议在编程事常常运用这些属性的设置,这样就可以使你的程序更加完善,易懂性也会提高. 属性快捷键:Ctrl+I. 2.常规 (1).编 ...

  6. 转 纯CSS设置Checkbox复选框控件的样式

    Checkbox复选框是一个可能每一个网站都在使用的HTML元素,但大多数人并不给它们设置样式,所以在绝大多数网站它们看起来是一样的.为什么不把你的网站中的Checkbox设置一个与众不同的样式,甚至 ...

  7. 【转】纯CSS设置Checkbox复选框控件的样式

    Checkbox复选框是一个可能每一个网站都在使用的HTML元素,但大多数人并不给它们设置样式,所以在绝大多数网站它们看起来是一样的.为什么不把你的网站中的Checkbox设置一个与众不同的样式,甚至 ...

  8. ExtJs 4.2.1 复选框数据项动态加载(更新一下)

    最近在做博客项目,后台管理用的是ExtJs4.2.1版本,因为是初学所以在使用的时候也遇到不少的这样或那样的问题,也写了不少这方面的博客,今天要写的博客是关于复选框数据项动态的加载功能,以前也没用过, ...

  9. QTableView中嵌入复选框CheckBox 的四种方法总结

    搜索了一下,QTableView中嵌入复选框CheckBox方法有四种: 第一种不能之前显示,必须双击/选中后才能显示,不适用. 第二种比较简单,通常用这种方法. 第三种只适合静态显示静态数据用 第四 ...

随机推荐

  1. linux查看硬件以及系统信息

    http://tech.idv2.com/2008/01/11/linux-sysinfo-cmds/ /proc目录的内容:   /proc/cpuinfo 关于处理器的信息,如类型.厂家.型号和性 ...

  2. Android AsyncTask

    AsyncTask类任务管理: 内部会创建一个进程作用域的线程池来管理要运行的任务,也就就是说当你调用了AsyncTask#execute()后,AsyncTask会把任务交给线程池,由线程池来管理创 ...

  3. CentOS 6.4 查看每个进程的网络流量

    所需工具nethogs 安装:yum install -y nethogs 使用:nethogs eth0

  4. ubifs核心功能 -- 垃圾回收

    可回收空间的分类 垃圾回收的目的是再利用(回收后的空间大小能写入有效的node),如果再利用的价值越低,其回收的必要性越低.为了进行有效的垃圾回收,UBIFS对可回收空间做了2个层次的水线划分: 死空 ...

  5. xenu工具介绍

    Xenu Link Sleuth 也许是你所见过的最小但功能最强大的检查网站死链接的软件了.你可以打开一个本地网页文件来检查它的链接,也可以输入任何网址来检查.它可以分别列出网站 的活链接以及死链接, ...

  6. [WP8.1UI控件编程]Windows Phone大数据量网络图片列表的异步加载和内存优化

    11.2.4 大数据量网络图片列表的异步加载和内存优化 虚拟化技术可以让Windows Phone上的大数据量列表不必担心会一次性加载所有的数据,保证了UI的流程性.对于虚拟化的技术,我们不仅仅只是依 ...

  7. 【BZOJ】2194: 快速傅立叶之二

    http://www.lydsy.com/JudgeOnline/problem.php?id=2194 题意:求$c[k]=\sum_{k<=i<n} a[i]b[i-k], n< ...

  8. HttpClient_使用httpclient必须知道的参数设置及代码写法、存在的风险

    结论: 如果使用httpclient 3.1并发量比较大的项目,最好升级到httpclient4.2.3上,保证并发量大时能抗住.httpclient 4.3.3,目前还有一些bug:还是用4.2.x ...

  9. Android App截包工具

    用于分析App通过网络与服务器交互的过程,至于教程,网上很多,软件叫Fiddler

  10. java.util.HashMap

    做LeeCode上的题目,发现关于数组的题目用HashMap后简化运算,包括在之前的工作中,也多次用到HashMap而我对它的了解却不多,现在来总结一下. 在算法中的用处,暂时的理解是,当数组中两个数 ...