Extjs根据条件设置表格某行背景色示例


Posted in Javascript onJuly 23, 2014

话不多说,贴上代码

html代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<link rel="stylesheet" type="text/css" href="../extjs3/resources/css/ext-all.css" rel="external nofollow" /> 
<script type="text/javascript" src="../extjs3/adapter/ext/ext-base.js"></script> 
<script type="text/javascript" src="../extjs3/ext-all.js"></script> 
<script type="text/javascript" src="array-grid.js"></script> 
<style type="text/css"> 
.<span style="font-family: Arial, Helvetica, sans-serif;">my_row_class</span><span style="font-family: Arial, Helvetica, sans-serif;">{ background:gray;}</span> 
</style> 
</head> 
<body> 
<div id="grid-example"></div> 
</body> 
</html>

 js代码,其中应-----隔开的代码即为关键代码,自己分析吧:

Ext.onReady(function(){ 
Ext.QuickTips.init(); 
Ext.state.Manager.setProvider(new Ext.state.CookieProvider()); 

// sample static data for the store 
var myData = [ 
['3m Co', 71.72, 0.02, 0.03, '9/1 12:00am'], 
['3m Co', 71.72, 0.02, 0.03, '9/1 12:00am'], 
['Alcoa Inc', 29.01, 0.42, 1.47, '9/1 12:00am'], 
['Altria Group Inc', 83.81, 0.28, 0.34, '9/1 12:00am'], 
['Altria Group Inc', 83.81, 0.28, 0.34, '9/1 12:00am'], 
['Altria Group Inc', 83.81, 0.28, 0.34, '9/1 12:00am'], 
['Wal-Mart Stores, Inc.', 45.45, 0.73, 1.63, '9/1 12:00am'] 
]; 

/** 
* Custom function used for column renderer 
* @param {Object} val 
*/ 
function change(val) { 
if (val > 0) { 
return '<span style="color:green;">' + val + '</span>'; 
} else if (val < 0) { 
return '<span style="color:red;">' + val + '</span>'; 
} 
return val; 
} 

/** 
* Custom function used for column renderer 
* @param {Object} val 
*/ 
function pctChange(val) { 
if (val > 0) { 
return '<span style="color:green;">' + val + '%</span>'; 
} else if (val < 0) { 
return '<span style="color:red;">' + val + '%</span>'; 
} 
return val; 
} 

// create the data store 
var store = new Ext.data.ArrayStore({ 
fields: [ 
{name: 'company'}, 
{name: 'price', type: 'float'}, 
{name: 'change', type: 'float'}, 
{name: 'pctChange', type: 'float'}, 
{name: 'lastChange', type: 'date', dateFormat: 'n/j h:ia'} 
] 
}); 

// manually load local data 
store.loadData(myData); 

// create the Grid 
var grid = new Ext.grid.GridPanel({ 
store: store, 
columns: [ 
{ 
id :'company', 
header : 'Company', 
width : 160, 
sortable : true, 
dataIndex: 'company' 
}, 
{ 
header : 'Price', 
width : 75, 
sortable : true, 
renderer : 'usMoney', 
dataIndex: 'price' 
}, 
{ 
header : 'Change', 
width : 75, 
sortable : true, 
renderer : change, 
dataIndex: 'change' 
}, 
{ 
header : '% Change', 
width : 75, 
sortable : true, 
renderer : pctChange, 
dataIndex: 'pctChange' 
}, 
{ 
header : 'Last Updated', 
width : 85, 
sortable : true, 
renderer : Ext.util.Format.dateRenderer('m/d/Y'), 
dataIndex: 'lastChange' 
} 
],viewConfig : {forceFit:true 
//------------------------------------------------ 
,getRowClass : function(record,rowIndex,rowParams,store){ 
if("3m Co"==record.get('company')){ 
return 'my_row_class'; 
} 
} 
//------------------------------------------------ 
}, 
stripeRows: true, 
autoExpandColumn: 'company', 
height: 350, 
width: 600, 
title: 'Array Grid', 
// config options for stateful behavior 
stateful: true, 
stateId: 'grid' 
}); 

// render the grid to the specified div in the page 
grid.render('grid-example'); 
});
Javascript 相关文章推荐
jQuery autocomplate 自扩展插件、自动完成示例代码
Mar 28 Javascript
简单时间提示DEMO从0开始一直进行计时
Nov 19 Javascript
Express作者TJ告别Node.js奔向Go
Jul 14 Javascript
js获取页面传来参数的方法
Sep 06 Javascript
javascript中键盘事件用法实例分析
Jan 30 Javascript
Js查找字符串中出现次数最多的字符及个数实例解析
Sep 05 Javascript
利用BootStrap弹出二级对话框的简单实现方法
Sep 21 Javascript
微信js-sdk分享功能接口常用逻辑封装示例
Oct 13 Javascript
微信小程序 跳转传参数与传对象详解及实例代码
Mar 14 Javascript
react-router4 嵌套路由的使用方法
Jul 24 Javascript
使用vue-cli编写vue插件的方法
Feb 26 Javascript
Vue监听数据渲染DOM完以后执行某个函数详解
Sep 11 Javascript
技术男用来对妹子表白的百度首页
Jul 23 #Javascript
JS中使用sort结合localeCompare实现中文排序实例
Jul 23 #Javascript
JS在IE下缺少标识符的错误
Jul 23 #Javascript
教你如何在 Javascript 文件里使用 .Net MVC Razor 语法
Jul 23 #Javascript
js监控IE火狐浏览器关闭、刷新、回退、前进事件
Jul 23 #Javascript
Javascript的&amp;&amp;和||的另类用法
Jul 23 #Javascript
jQuery获取节点和子节点文本的方法
Jul 22 #Javascript
You might like
php修改时间格式的代码
2011/05/29 PHP
深入apache配置文件httpd.conf的部分参数说明
2013/06/28 PHP
PHP SPL使用方法和他的威力
2013/11/12 PHP
php动态绑定变量的用法
2015/06/16 PHP
PHP实现linux命令tail -f
2016/02/22 PHP
php正则判断是否为合法身份证号的方法
2017/03/16 PHP
PHP的静态方法与普通方法用法实例分析
2019/09/26 PHP
在VS2008中使用jQuery智能感应的方法
2010/12/30 Javascript
jQuery实现带动画效果的多级下拉菜单代码
2015/09/08 Javascript
JavaScript知识点总结(十六)之Javascript闭包(Closure)代码详解
2016/05/31 Javascript
微信小程序 label 组件详解及简单实例
2017/01/10 Javascript
Vue.js实战之组件之间的数据传递
2017/04/01 Javascript
Node.js学习之查询字符串解析querystring详解
2017/09/28 Javascript
微信小程序之数据缓存的实例详解
2017/09/29 Javascript
express如何使用session与cookie的方法
2018/01/30 Javascript
vuejs前后端数据交互之从后端请求数据的实例
2018/08/11 Javascript
Openlayers实现测量功能
2020/09/25 Javascript
[00:15]TI9地铁玩家打卡
2019/08/11 DOTA
python读写文件操作示例程序
2013/12/02 Python
Python使用MD5加密字符串示例
2014/08/22 Python
python skimage 连通性区域检测方法
2018/06/21 Python
python中类的属性和方法介绍
2018/11/27 Python
Python子类继承父类构造函数详解
2019/02/19 Python
Python脚本按照当前日期创建多级目录
2019/03/01 Python
python实现读取excel文件中所有sheet操作示例
2019/08/09 Python
利用CSS3 动画 绘画 圆形动态时钟
2018/03/20 HTML / CSS
CSS3使用transition属性实现过渡效果
2018/04/18 HTML / CSS
css3实现二维码扫描特效的示例
2020/10/29 HTML / CSS
德国50岁以上交友网站:Lebensfreunde
2020/03/18 全球购物
瑞士男士时尚网上商店:Babista
2020/05/14 全球购物
恐龙的灭绝教学反思
2014/02/12 职场文书
遗体告别仪式主持词
2014/03/20 职场文书
刑事辩护授权委托书格式
2014/10/13 职场文书
结婚主持人致辞
2015/07/28 职场文书
Python数据分析入门之教你怎么搭建环境
2021/05/13 Python
python opencv将多个图放在一个窗口的实例详解
2022/02/28 Python