Extjs设置GridPanel选中行背景色和选中单元格背景色

var view = grid.getView();

view.getRow(index).style.backgroundColor = "red";  //选中行背景色

view.getCell(rowIndex,colIndex).style.backgroundColor = "red";  //选中单元格背景色

我在开发时是在CheckboxSelectionModel中的beforerowselect中进行设置的:

var smQd = new Ext.grid.CheckboxSelectionModel({'beforerowselect':function(sm,rowIndex,keepExisting,record){var l = storeXtcpyy.getCount();for(var i=0;i<l;i++){if(i%2 == 0){var view = gridXtcpyy.getView();view.getRow(i).style.backgroundColor =                                         "white";}else{var view = gridXtcpyy.getView();view.getRow(i).style.backgroundColor =                                         "#FAFAFA";}}}}});

gridXtcpyy.addListener('cellclick', function (grid, rowIndex, columnIndex, event) {var view = gridXtcpyy.getView();view.getRow(rowIndex).style.backgroundColor = "#DFE8F6"; }, gridXtcpyy);

var smQd = new Ext.grid.CheckboxSelectionModel({renderer:function(value, metaData, record, rowIndex, colIndex, store){if((org_id == record.data['dsfjg'])||(top_org_id == org_id)){if((record.data['ywdm']=="901")||(record.data['xgdjzt'].split("-")[0] == 2)||(record.data['khlxzt'].split("-")[0] != 0)||(record.data['khtzzt'].split("-")[0] != 0)){return "";}else{return '<div class="x-grid3-row-checker"> </div>';}}else{return "";}},//不允许使用点击表格形式修改选择//handleMouseDown:Ext.emptyFn,
        listeners:{/*'rowselect':function(sm,rowIndex,record){var view = gridXtcpyy.getView();view.getRow(rowIndex).style.backgroundColor = "#DFE8F6"; },'rowdeselect':function(sm,rowIndex,record){var l = storeXtcpyy.getCount();for(var i=0;i<l;i++){if(i%2 == 0){var view = gridXtcpyy.getView();view.getRow(i).style.backgroundColor = "white";}else{var view = gridXtcpyy.getView();view.getRow(i).style.backgroundColor = "#FAFAFA";}}},*/'selectionchange':function(sm){if(sm.getSelections().length>0){var select_zyed = 0;var yxt_rs = 0;for(var i=0;i<sm.getSelections().length;i++){if((sm.getSelections()[i].data['xgdjzt'].split("-")[0] != 2)&&(sm.getSelections()[i].data['khlxzt'].split("-")[0] == 0)){var jyje_arr = sm.getSelections()[i].data['jyje'].split(",");var jyje_sel = "";for(var j = 0; j< jyje_arr.length; j++){jyje_sel += jyje_arr[j];}select_zyed = select_zyed + parseFloat(jyje_sel) ;//console.log("-------1:"+select_zyed);//select_zyed = accAdd(select_zyed,parseFloat(jyje_sel));if(parseFloat(jyje_sel)>=gmqdje && parseFloat(jyje_sel) < xzje){yxt_rs ++;}}}used_ed.setValue(rendererZhMoney(select_zyed));//var total_ed_arr = total_ed.getValue().split(",");var total_ed_arr = Ext.getCmp("total_ed").getValue().split(",");var _total_ed = "";for(var j = 0; j< total_ed_arr.length; j++){_total_ed += total_ed_arr[j];}_total_ed = parseFloat(_total_ed);var sure_used_ed_arr = Ext.getCmp("sure_used_ed").getValue().split(",");var _sure_used_ed = "";for(var j = 0; j< sure_used_ed_arr.length; j++){_sure_used_ed += sure_used_ed_arr[j];}_sure_used_ed = parseFloat(_sure_used_ed);var yfdx_wqr_ed_arr = Ext.getCmp("yfdx_wqr_ed").getValue().split(",");var _yfdx_wqr_ed = "";for(var j = 0; j< yfdx_wqr_ed_arr.length; j++){_yfdx_wqr_ed += yfdx_wqr_ed_arr[j];}_yfdx_wqr_ed = parseFloat(_yfdx_wqr_ed);//console.log("---------:"+Subtr(_total_ed,accAdd(accAdd(_sure_used_ed,_yfdx_wqr_ed),select_zyed)));//leave_ed.setValue(rendererZhMoney(_total_ed-_sure_used_ed-_yfdx_wqr_ed-select_zyed));
                            leave_ed.setValue(rendererZhMoney(Subtr(_total_ed,accAdd(accAdd(_sure_used_ed,_yfdx_wqr_ed),select_zyed))));//leave_ed.setValue(rendererZhMoney(Subtr(total_ed,select_zyed)));
                            total_rs = total_xje_rs.getValue();ytz_rs = ytz_xje_rs.getValue();yxz_xje_rs.setValue(yxt_rs);sy_xje_rs.setValue(Subtr(total_rs,accAdd(ytz_rs,yxt_rs)));}else{used_ed.setValue(rendererZhMoney(0));//leave_ed.setValue(total_ed.getValue());var total_ed_arr = Ext.getCmp("total_ed").getValue().split(",");var _total_ed = "";for(var j = 0; j< total_ed_arr.length; j++){_total_ed += total_ed_arr[j];}_total_ed = parseFloat(_total_ed);var sure_used_ed_arr = Ext.getCmp("sure_used_ed").getValue().split(",");var _sure_used_ed = "";for(var j = 0; j< sure_used_ed_arr.length; j++){_sure_used_ed += sure_used_ed_arr[j];}_sure_used_ed = parseFloat(_sure_used_ed);var yfdx_wqr_ed_arr = Ext.getCmp("yfdx_wqr_ed").getValue().split(",");var _yfdx_wqr_ed = "";for(var j = 0; j< yfdx_wqr_ed_arr.length; j++){_yfdx_wqr_ed += yfdx_wqr_ed_arr[j];}_yfdx_wqr_ed = parseFloat(_yfdx_wqr_ed);//leave_ed.setValue(rendererZhMoney(_total_ed-_sure_used_ed-_yfdx_wqr_ed));
                            leave_ed.setValue(rendererZhMoney(Subtr(_total_ed,accAdd(_sure_used_ed,_yfdx_wqr_ed))));total_rs = total_xje_rs.getValue();ytz_rs = ytz_xje_rs.getValue();yxz_xje_rs.setValue(0);sy_xje_rs.setValue(Subtr(total_rs,ytz_rs));}},'beforerowselect':function(sm,rowIndex,keepExisting,record){var l = storeXtcpyy.getCount();for(var i=0;i<l;i++){if(i%2 == 0){var view = gridXtcpyy.getView();view.getRow(i).style.backgroundColor = "white";}else{var view = gridXtcpyy.getView();view.getRow(i).style.backgroundColor = "#FAFAFA";}}if((org_id == record.data['dsfjg'])||(top_org_id == org_id)){if((record.data['ywdm']=="901")||(record.data['xgdjzt'].split("-")[0] == 2)||(record.data['khlxzt'].split("-")[0] != 0)||(record.data['khtzzt'].split("-")[0] != 0)){return false;}else{return true;}    }else{return false;}    }}});

转载于:https://www.cnblogs.com/mingforyou/p/3560180.html

Extjs GridPanel 监听事件 行选中背景相关推荐

  1. html中下拉列表监听事件,ExtJS 下拉框监听事件、日期选择器监听事件、实现动态给items添加删除数据...

    本文将为您描述ExtJS 下拉框监听事件.日期选择器监听事件.实现动态给items添加删除数据,具体实现方法: 1.下拉框 下拉框选择时,触发事件的方法: 在 Ext.form.ComboBox 组件 ...

  2. android 常用的监听器,Android中的Keyboard监听事件

    前言 有关Keyboard监听事件,无非就是以下这几种情况: 1,操作显示或隐藏键盘: 2,判断当前键盘的状态: 3,键盘显示或隐藏后的拦截处理: 只要有使用到EditText,避免不了肯定会遇到以上 ...

  3. [js] 在设置keyup监听事件后按F5刷新和按浏览器中刷新键刷新有什么区别?

    [js] 在设置keyup监听事件后按F5刷新和按浏览器中刷新键刷新有什么区别? 按浏览器中刷新键刷新不会触发keyup事件 个人简介 我是歌谣,欢迎和大家一起交流前后端知识.放弃很容易, 但坚持一定 ...

  4. html中单选按钮设置监听事件,浅谈监听单选框radio改变事件(和layui中单选按钮改变事件),单选框radio...

    浅谈监听单选框radio改变事件(和layui中单选按钮改变事件),单选框radio 若是只引用jquery的话,监听单选按钮改变事件如下: 男 女 $(document).ready(functio ...

  5. vue 点击事件传递多个参数_Vue子组件监听事件中传递参数的方法

    在子组件中,我们可以通过以下方式监听事件: v-on:click="$emit('funcName',a)" 如果需要传多个参数,可以通过以下方式: v-on:click=&quo ...

  6. pygame中的监听事件以及精灵和精灵组

    pygame监听事件以及精灵和精灵组 文章目录 pygame监听事件以及精灵和精灵组 1.游戏循环中监听事件 1.事件(event) 2.监听 3.代码实现 二.理解精灵和精灵组 1.精灵 2.精灵组 ...

  7. ROS中 Python/C++ 键盘按键监听事件

    ROS中 Python/C++ 键盘按键监听事件 这几天在肝全国智能驾驶大赛,真就挺累的:抓狂思考,手搓代码,疯狂编译,要命运行.在这趟火车上,被各种各样的问题卡住甚至卡死,就很难受好吧.至今,我深深 ...

  8. Android 自定义Dialog类,并在Activity中实现按钮监听事件

    实际开发中,经常会用到Dialog,比如退出时候会弹出是否退出,或者还有一些编辑框也会用Dialog实现,效果图如下: 开发中遇到的问题无非在于如果在Activity中监听这个Dialog中实现的按钮 ...

  9. 小程序组件中的监听事件

    小程序组件中的监听事件 需求: 微信小程序中,如果进行使用了component级的组件的话,在一些情况下,父组件中使页面中的数据进行变化,子组件中 的数据不会一起变化,由此可以使用该方法 方法: 使用 ...

最新文章

  1. 机器学习03-神经网络
  2. Xcode7.1环境下上架iOS App到AppStore 流程 (3)
  3. C++模板学习之函数对象之谓词
  4. Python3解决UnicodeDecodeError:'utf-8' codec can't decode byte..问题终极解决方案
  5. 错误MSB4018 “ResolvePackageAssets”任务意外失败的解决方法
  6. 一个application多个 URL
  7. SQL—— Create table as select 与 使用select查询结果创建新表
  8. python什么学历能学_自考学历找工作,钱少点也没关系?
  9. null或空值的判断处理-java
  10. vb全局热键的写法(占很少的资源)
  11. C# Windows Form编程
  12. Java基础篇:字符串的简单介绍
  13. WindowsServer2008R2安装中文语言包截图详细教程(附语言包下载资源)
  14. tensorflow学习之二 alexnet vgg resnet目标分类
  15. 混合多云时代:大型主机z15的新使命
  16. unity3d Android客户端与PC服务器实现Socket通信(wifi)
  17. B. Assigning to Classes
  18. 几种漂亮边框制作教程
  19. 74LS148 编码器 【数字电路】
  20. 一篇高中生都能看懂的MySQL入门博客(长文)

热门文章

  1. 服务器自动post,Go Web服务器自动重定向POST请求
  2. java 数组排序_用Java对数组排序
  3. eclipse使用python_【转】使用Python的IDE:Eclipse+PyDev
  4. 如何建立MFC绘图工程:外貌框架_基于对话框(开发平台VS2017)
  5. Python的文件锁使用
  6. C++ 动态申请数组
  7. 【build your own xxx】实现你自己的bind函数
  8. 架构师Jack专访:全面认识软件测试架构师
  9. CSS 基础入门语法
  10. 【学习笔记】ListView初识