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. Android GPS 取经纬度

    // 获取位置管理服务 private LocationManager locationManager;3 String mProviderName = ""; private v ...

  2. Java 文件和byte数组转换

    /** * 获得指定文件的byte数组 */ private byte[] getBytes(String filePath){ byte[] buffer = null; try { File fi ...

  3. OI刷题记录

    从六月一号开始记录啦 6月1日 link-cut-tree BZOJ2631 tree                                     

  4. 再说virtual

    看了对Anders Hejlsberg的采访, 1)C#中函数默认是非virtual的设计因为:在java中,一个方法默认是虚拟化的,只有对一个方法必须声明final关键字,这样这个方法才是非虚的,无 ...

  5. [iOS-UI]点击清空按钮,却会有提交的感觉

    一,问题分析 1.感觉像是点击清空按钮时调用了添加按钮的事件. 2.插入断电后,还真是这样. 3.仔细想想,才发现,原来是我复制了添加按钮,变成为添加按钮,进而点击清空时,不仅清空了所有内容,还把最新 ...

  6. ffmpeg常用命令

    windows http://www.cnblogs.com/wainiwann/p/4128154.html ubuntu http://blog.csdn.net/hellowxwworld/ar ...

  7. console ouput 与 重定向输出 效率对比

    昨天做一个程序的性能测试的时候,由于用了自动化脚本,测试的时候直接把结果(包括执行时间等信息)输出到文件.后来我在调整源代码的时候单独跑了可执行文件,此时结果是输出到控制台(printf).大约100 ...

  8. phpMyAdmin:无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装。

    一:错误提示 英文:Cannot start session without errors, please check errors given in your PHP and/or webserve ...

  9. CAS单点登录中文用户名乱码问题

    CAS单点登录中文用户名乱码问题,有两种情况 1. CAS server乱码 即在向server端提交用户名和密码时,发生了乱码,解决方法是: 打开WEB-INF/web.xml,在其它的Filter ...

  10. Java Web include指令和动作的区别