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. myeclipse操作记录

    myeclipse里面jsp页面里面js注释快捷键 ctrl + shift +cctrl + / MyEclipse 每次保存都要building workspace的解决方法 方法一:菜单栏-&g ...

  2. ajax、post、get实例

    html代码: <!DOCTYPE HTML><html lang="en-US"><head> <meta charset=" ...

  3. [Codeforces] Round #320 (Div.2)

    1.前言 虽然这次我依旧没有参加正式比赛,但是事后还是看了看题目的...一般不怎么刷Codeforces. A.Raising Bacteria You are a lover of bacteria ...

  4. 【BZOJ】1367: [Baltic2004]sequence

    题意 给\(n(n \le 10^6)\)个数的序列\(a\),求一个递增序列\(b\)使得\(\sum_{i=1}^{n} |a_i-b_i|\)最小. 分析 神题啊不会. 具体证明看黄源河论文&l ...

  5. JS:操作样式表3:内联和外链样式

    var box = document.getElementById("box"); box.style.属性;只能读取修改行内样式. //访问元素样式2,对外链样式表进行操作 do ...

  6. InterBase数据库迁移到MySQL(数据导出)

    这篇我将记叙我的第二个脚本程序,这篇我使用InterBase数据库提供的“isql”命令来导出我所要的数据,但是由于“isql”命令没有直接导出数据的语句,说以我采用的是导入一个配置文件,在这个文件中 ...

  7. zabbix3.2.0beta2 监控模版

    Zabbix监控中用到了一系列模版,nginx后端检测状态 微信告警等一系列常规的服务应用监控 memcached监控模版,可以自己重新定义memcached的端口 http://files.cnbl ...

  8. POJ1154

    LETTERS Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 8119   Accepted: 3661 Descripti ...

  9. 判断pc端还是移动,并给移动加上其它的样式文件方法

      所有移动端PC端 按 640 进行排版 body, html { width: %; height: %; overflow: hidden; background-color: #; } bod ...

  10. windows信息

    echo system('systeminfo'); echo "系统类型".php_uname("s")."<br>"; ec ...