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 学习笔记 选择器之四
Jul 23 Javascript
javascript 用记忆函数快速计算递归函数
Mar 15 Javascript
JavaScript对象链式操作代码(jquery)
Jul 04 Javascript
jQuery性能优化的38个建议
Mar 04 Javascript
Javascript中的apply()方法浅析
Mar 15 Javascript
js检测判断日期大于多少天的方法
May 04 Javascript
jquery zTree异步加载简单实例讲解
Feb 25 Javascript
KnockoutJS 3.X API 第四章之表单submit、enable、disable绑定
Oct 10 Javascript
javascript鼠标跟随运动3种效果(眼球效果,苹果菜单,方向跟随)
Oct 27 Javascript
JavaScript之map reduce_动力节点Java学院整理
Jun 29 Javascript
JS实现发送短信验证后按钮倒计时功能(防止刷新倒计时失效)
Jul 07 Javascript
js实现数字跳动到指定数字
Aug 25 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数据流应用的一个简单实例
2012/09/14 PHP
laravel5.6中的外键约束示例
2019/10/23 PHP
Mootools 1.2教程 定时器和哈希简介
2009/09/15 Javascript
利用jQuery 实现GridView异步排序、分页的代码
2010/02/06 Javascript
JQuery触发radio或checkbox的change事件
2012/12/18 Javascript
jquery统计复选框选中示例
2013/11/05 Javascript
JS实现横向与竖向两个选项卡Tab联动的方法
2015/09/27 Javascript
js停止冒泡和阻止浏览器默认行为的简单方法
2016/05/15 Javascript
jQuery事件处理的特征(事件命名机制)
2016/08/23 Javascript
手动下载Chrome并解决puppeteer无法使用问题
2018/11/12 Javascript
实例详解vue中的$root和$parent
2019/04/29 Javascript
Jquery Datatables的使用详解
2020/01/30 jQuery
JS实现超级好看的鼠标小尾巴特效
2020/12/01 Javascript
[56:35]DOTA2上海特级锦标赛C组小组赛#1 OG VS Archon第二局
2016/02/27 DOTA
[01:08:56]DOTA2-DPC中国联赛 正赛 Magma vs LBZS BO3 第一场 2月7日
2021/03/11 DOTA
Python实现的ini文件操作类分享
2014/11/20 Python
在Python的Flask框架中实现单元测试的教程
2015/04/20 Python
Python函数式编程指南(四):生成器详解
2015/06/24 Python
Python写的一个定时重跑获取数据库数据
2016/12/28 Python
利用Python自带PIL库扩展图片大小给图片加文字描述的方法示例
2017/08/08 Python
对python中array.sum(axis=?)的用法介绍
2018/06/28 Python
Python延时操作实现方法示例
2018/08/14 Python
基于Python实现定时自动给微信好友发送天气预报
2018/10/25 Python
python实现合并多个list及合并多个django QuerySet的方法示例
2019/06/11 Python
365 Tickets英国:全球景点门票
2019/07/06 全球购物
泰国最新活动和优惠:Megatix
2020/05/07 全球购物
共产党员公开承诺践诺书
2014/05/28 职场文书
孩子教育的心得体会
2014/09/01 职场文书
2014七年级班主任工作总结
2014/12/05 职场文书
法制教育观后感
2015/06/17 职场文书
领导欢送会主持词
2015/07/06 职场文书
环保建议书作文500字
2015/09/14 职场文书
python实现简易名片管理系统
2021/04/11 Python
Django实现翻页的示例代码
2021/05/24 Python
浅谈Java实现分布式事务的三种方案
2021/06/11 Java/Android
【海涛教你打DOTA】剑圣第一人称视角解说
2022/04/01 DOTA