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 相关文章推荐
破除一些网站复制、右键限制
Nov 04 Javascript
javascript YUI 读码日记之 YAHOO.util.Dom - Part.4
Mar 22 Javascript
javascript for循环设法提高性能
Feb 24 Javascript
Javascript学习笔记之函数篇(四):arguments 对象
Nov 23 Javascript
javascript实现带节日和农历的日历特效
Feb 01 Javascript
jQuery Ajax使用实例
Apr 16 Javascript
ionic实现带字的toggle滑动组件
Aug 27 Javascript
jQuery实现立体式数字动态增加(animate方法)
Dec 21 Javascript
vue学习笔记之指令v-text &amp;&amp; v-html &amp;&amp; v-bind详解
May 12 Javascript
基于zepto.js实现手机相册功能
Jul 11 Javascript
Angularjs之ngModel中的值验证绑定方法
Sep 13 Javascript
vue项目中定义全局变量、函数的几种方法
Nov 08 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
《DOTA3》开发工作已经开始 《DOTA3》将代替《DOTA2》
2021/03/06 DOTA
PHP 图片上传实现代码 带详细注释
2010/04/29 PHP
php trim 去除空字符的定义与语法介绍
2010/05/31 PHP
PHP中redis的用法深入解析
2014/02/20 PHP
php验证是否是md5编码的简单代码
2014/04/01 PHP
php中操作memcached缓存进行增删改查数据的实现代码
2014/08/15 PHP
javascript StringBuilder类实现
2008/12/22 Javascript
JavaScript中获取未知对象属性的代码
2011/04/27 Javascript
读jQuery之七 判断点击了鼠标哪个键的代码
2011/06/21 Javascript
jQuery EasyUI API 中文文档 - ValidateBox验证框
2011/10/06 Javascript
jBox 2.3基于jquery的最新多功能对话框插件 常见使用问题解答
2011/11/10 Javascript
用Js实现的动态增加表格示例自己写的
2013/10/21 Javascript
JS正则表达式获取分组内容的方法详解
2013/11/15 Javascript
Jquery validation remote 验证的缓存问题解决方法
2014/03/25 Javascript
深入理解JavaScript系列(37):设计模式之享元模式详解
2015/03/04 Javascript
浅谈js的url解析函数封装
2016/06/28 Javascript
JS实用的带停顿的逐行文本循环滚动效果实例
2016/11/23 Javascript
Vue.js使用v-show和v-if的注意事项
2016/12/13 Javascript
vue实现后台管理权限系统及顶栏三级菜单显示功能
2019/06/19 Javascript
js实现页面多个日期时间倒计时效果
2019/06/20 Javascript
Vue 3.x+axios跨域方案的踩坑指南
2019/07/04 Javascript
vue-cli3 引入 font-awesome的操作
2020/08/11 Javascript
js实现贪吃蛇游戏(简易版)
2020/09/29 Javascript
使用Python制作获取网站目录的图形化程序
2015/05/04 Python
对python中的for循环和range内置函数详解
2018/04/17 Python
tensorflow 用矩阵运算替换for循环 用tf.tile而不写for的方法
2018/07/27 Python
Python socket服务常用操作代码实例
2020/06/22 Python
Matplotlib 折线图plot()所有用法详解
2020/07/28 Python
如何完美的建立一个python项目
2020/10/09 Python
CSS3线性渐变简单实现以及该属性在浏览器中的不同
2012/12/12 HTML / CSS
CSS3绘制超炫的上下起伏波动进度加载动画
2016/04/21 HTML / CSS
一文彻底解决HTML5页面中长按保存图片功能
2019/06/10 HTML / CSS
世界首屈一指的钓鱼用品商店:TackleDirect
2016/07/26 全球购物
苹果美国官方商城:Apple美国
2016/08/24 全球购物
绿色环保演讲稿
2014/05/10 职场文书
2015社区精神文明建设工作总结
2015/04/21 职场文书