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;
}
}
}
});

Extjs GridPanel 监听事件 行选中背景的更多相关文章

  1. Android中Button的五种监听事件

    简单聊一下Android中Button的五种监听事件: 1.在布局文件中为button添加onClick属性,Activity实现其方法2.匿名内部类作为事件监听器类3.内部类作为监听器4.Activ ...

  2. Vue 为什么在 HTML 中监听事件?

    为什么在 HTML 中监听事件? 你可能注意到这种事件监听的方式违背了关注点分离(separation of concern)传统理念.不必担心,因为所有的 Vue.js 事件处理方法和表达式都严格绑 ...

  3. jquery中,使用append增加元素时,该元素的绑定监听事件失效

    举例:如果在一个<div id="resultArea"></div>中,通过append添加一个id="checkOutTip"的文本 ...

  4. jquery中,使用append增加新元素时,新增元素的绑定监听事件失效的解决办法

    $("outerSelector").on("eventType","innerSelector",function(){}); 举例:如果 ...

  5. Vue子组件监听事件中传递参数的方法

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

  6. EditText中onEditorAction监听事件执行两次

    Android的EditText通过setOnEditorActionListener给文本编辑框设置监听事件,但是在其处理方法onEditorAction中的逻辑在每次回车后都触发了两次, 原来是在 ...

  7. java中的监听事件

    java监听器实现的类 1.ServletContextListener:对servlet上下文的创建和销毁监听 2.ServletContextAttributeListener:监听servlet ...

  8. 关于AngularJs中监听事件及脏循环的理解

    可能很多刚入行或者刚学习的前端对于AngularJs中的一些事件或者概念感觉不理解或者没有思路,今天让我们一起来剖析一下AngularJs中的一些事件. AngularJs中对于的监听事件会用到一个s ...

  9. vue 中监听窗口发生变化,触发监听事件, window.onresize && window.addEventListener('resize',fn) ,window.onresize无效的处理方式

    // 开始这样写,不执行 window.onresize = function() { console.log('窗口发生变化') } // 改成window监听事件 window.addEventL ...

随机推荐

  1. Python *args **kw

    当函数的参数不确定时,可以使用*args 和**kwargs,*args 没有key值,**kwargs有key值. *args def fun_var_args(farg, *args): prin ...

  2. post提交数据的四种编码方式

    这里总结下post提交数据的四种方式. 参考文章: https://www.jianshu.com/p/3c3157669b64

  3. Mongo分片基础命令

    一.三节点作用 Shard: 用于存储实际的数据块,实际生产环境中一个shard server角色可由几台机器组个一个replica set承担,防止主机单点故障 Config Server: mon ...

  4. 使用PHP写了一个图片分割等份工具,便于前台页面切图时使用。

    目的: 由于网站更新活动较频繁,其大多数以静态图片为主,设计人员在除了设计图后都要给前端制作人员再次切图从而达到页面加载图片缓慢的问题,为了减少工作量做了该工具. 功能: 上传一张图,将其分割成指定等 ...

  5. jquery获取浏览器宽高

    满足获取各种高的需求 $(document).ready(function() { alert($(window).height()); //浏览器时下窗口可视区域高度 alert($(documen ...

  6. 【BZOJ】4894: 天赋

    题解 这道题是求一个有向图的外向生成树 入度矩阵对应着外向生成树,出度矩阵对应着内向生成树,知道了这个就可以求出基尔霍夫矩阵了,同时n - 1阶主子式一定要删掉根节点的一行一列 代码 #include ...

  7. USACO 6.1 Cow XOR

    Cow XORAdrian Vladu -- 2005 Farmer John is stuck with another problem while feeding his cows. All of ...

  8. USACO 5.1 Starry Night

    Starry NightIOI 98 High up in the night sky, the shining stars appear in clusters of various shapes. ...

  9. 【知了堂学习笔记】java 正则表达式

    本文参考网络上面别人的博客知识产出 正则表达式基础 1.句号 假设你想要找出三个字母的单词,而且这些单词必须以“t”字母开头,以“n”字母结束.另外,假设有一本英文字典,你可以用正则表达式搜索它的全部 ...

  10. session过期情况下ajax请求不会触发重新登录的问题

    在拦截器中添加以下逻辑 String requestType = request.getHeader("X-Requested-With"); if (!StringUtils.i ...