第一种情况:加载数据时改变列的颜色
首先定义一个样式如下(这里以红色背景为例):
.x-grid-back-red {
background: #FF0000;
}
background: #FF0000;
}
定义改变颜色的列:
{header:'摘要',dataIndex:'zhaoyao',align:'left',width:150,
renderer : function(v,m){
m.css='x-grid-back-red';
return v;
}
}
renderer : function(v,m){
m.css='x-grid-back-red';
return v;
}
}
效果图如下:
第二种情况:加载数据完成后改变行的颜色
首先要解决的一个问题是如果判断数据已经加载完毕,最简单的方法是给grid的store添加onload事件。
如果你想有条件地改变某行的背景颜色,则还需要遍历gird的store,这里有个简单的方法即store的
each方法。看下面这个例子:
grid.getStore().on('load',function(s,records){
var girdcount=0;
s.each(function(r){
if(r.get('zy')=='本期合计'){
grid.getView().getRow(girdcount).style.backgroundColor='#FFFF00';
}else if(r.get('zy')=='本年累计'){
grid.getView().getRow(girdcount).style.backgroundColor='#FF1493';
}else if(r.get('zy')=='期初余额'){
grid.getView().getRow(girdcount).style.backgroundColor='#DCDCDC';
}
girdcount=girdcount+1;
});
});
var girdcount=0;
s.each(function(r){
if(r.get('zy')=='本期合计'){
grid.getView().getRow(girdcount).style.backgroundColor='#FFFF00';
}else if(r.get('zy')=='本年累计'){
grid.getView().getRow(girdcount).style.backgroundColor='#FF1493';
}else if(r.get('zy')=='期初余额'){
grid.getView().getRow(girdcount).style.backgroundColor='#DCDCDC';
}
girdcount=girdcount+1;
});
});
效果图如下:
第三种情况:使用Ext本身的颜色渲染效果
暂时只发现Ext已经设计好的一种效果:单双行背景颜色不同。
很简单,在grid中配置stripeRows为true即可!
另外,如果想使用自己定义的行的背景颜色,那就去修改ext-all.css吧,提供几个:
-----------在ext-all.css修改代码如下---------
.x-grid3-row {
border-color:#ffaaee;//改变grid边框颜色
border-top-color:#fff;
}
.x-grid3-row-alt{
background-color:#ddeeaa;//改变 行的颜色
}
.x-grid3-row-over {
border-color:#ddd;
background-color:#ee1166;//鼠标移上去改变行的底色
background-image:url(../images/default/grid/row-over.gif);
}
.x-grid3-row {
border-color:#ffaaee;//改变grid边框颜色
border-top-color:#fff;
}
.x-grid3-row-alt{
background-color:#ddeeaa;//改变 行的颜色
}
.x-grid3-row-over {
border-color:#ddd;
background-color:#ee1166;//鼠标移上去改变行的底色
background-image:url(../images/default/grid/row-over.gif);
}
相关推荐
在EXT JS框架中,Grid组件是一种非常常用的展示数据表格的方式,它提供了丰富的功能和灵活性。在某些场景下,用户可能需要合并行或列以更好地组织和呈现数据,例如在显示汇总信息或者创建复杂的报告时。"ext grid ...
本文将详细介绍一种在Ext JS中实现数据单元格合并的方法,并通过示例代码来帮助开发者更好地理解和应用这一技术。 #### CSS样式调整 为了实现良好的视觉效果,在开始编写JavaScript代码之前,我们需要对CSS样式做...
1. **行颜色修改**:通过 `getRowClass` 方法可以根据行数据的属性来动态设置行的CSS类名,进而改变行的颜色。 2. **列颜色修改**:通过 `ColumnModel` 的 `renderer` 属性指定自定义渲染器,可以在单元格级别上设置...
例如,你可以根据单元格的数据内容动态生成提示信息,或者设置提示层的背景颜色、字体大小等视觉效果。这使得EXT Grid不仅可以作为数据展示的工具,还能为用户提供更多维度的信息,帮助他们更好地理解和分析数据。 ...
10.2.5 设置行的背景颜色 / 532 10.2.6 列标题的分组 / 533 10.2.7 使用锁定列 / 534 10.2.8 grid的配置项、属性、方法和事件 / 535 10.3 grid的附加功能 / 537 10.3.1 概述 / 537 10.3.2 附加功能基类:ext....
这里直接在列配置中定义了CSS样式,使得该列的所有单元格背景颜色都为红色。 对于改变整行的颜色,我们可以利用EXTJS的`getRowClass`方法。这个方法允许我们在每一行渲染时动态地返回一个CSS类。例如: ```...
Grid 是 Ext JS 中一项极其重要的功能组件,提供了诸如排序、缓存、拖拽、列隐藏、行号显示、汇总计算及单元格编辑等功能。下面将详细介绍如何构建一个基础 Grid。 1. **定义列模型**:通过 `Ext.grid.ColumnModel`...
在Ext JS这个强大的JavaScript框架中,GridPanel是一个非常重要的组件,用于展示数据并提供交互功能。在实际开发中,我们经常需要对GridPanel的数据、字体颜色以及CSS样式进行自定义,以满足各种业务需求。本篇文章...
此外,我们还可以直接通过Grid的`getView()`方法来改变单元格的样式,例如在单元格被点击后更改其背景色和字体颜色: ```javascript grid.getView().getCell(rowIndex, columnIndex).style.backgroundColor = "#FF...
本文将详细介绍如何通过不同的方法来实现这一功能,包括在加载数据时改变列的颜色、加载数据后改变行的颜色以及使用ExtJS内置的颜色渲染效果。 #### 第一种情况:加载数据时改变列的颜色 当数据被加载到GridPanel...
在EXT JS这个强大的JavaScript框架中,开发者们常常需要创建丰富的用户界面,以提供直观的数据展示。"Ext扩展控件,可以用图片显示百分之多少"的标题揭示了一个特定的EXT控件功能,它允许将表格(grid)中的百分比...
EXT.js 是一个强大的JavaScript库,专门用于构建富客户端应用程序,尤其在Web应用的用户界面设计上表现出色。YuiGrid是EXT.js中的一个组件,它提供了数据网格的功能,允许开发者展示大量结构化数据,并实现诸如排序...
在回调函数中,我们可以检查每一行的数据,如果满足特定条件,就使用CSS样式来改变行的背景颜色。例如,可以使用`Ext.util.CSS.createClass`创建新的CSS类,并在满足条件的行上应用这个类。 三、列表动态获取列 ...
根据提供的文件信息,“[深入浅出Ext.JS.徐会生&何启伟&康爱媛)第7——13章.pdf”,我们可以推测这是一本关于Ext JS框架的专业书籍的一部分,作者为徐会生、何启伟和康爱媛。由于实际的内容并未给出具体章节的信息,...
同时,定义了一个CSS样式,用于设置表格单元格的背景图片。 在实现JsonStore的示例中,我们创建了一个`ColumnModel`来定义表格的列结构。如下所示: ```javascript var col=new Ext.grid.ColumnModel([{ header:...
4. **Custom View**: 如果`GroupingView`不能满足需求,你可以创建一个自定义的视图类,继承自`Ext.grid.GridView`,然后重写`renderUI`和`onRender`方法,以便控制单元格的合并逻辑。 5. **Renderer Function**: ...
例如,当鼠标悬停在有效的目标位置上时,可以改变目标单元格的背景色。 5. **运行环境**: 题目中提到,所有文件位于"MyTest"目录下,可以运行,但需要下载ExtJS 3.0包并放置在网站根目录。这意味着你需要确保你的...
例如,你可以使用以下代码改变提示框的背景颜色: ```javascript Ext.tip.QuickTipManager.register({ style: 'background-color: #f0f0f0;' }); ``` 总的来说,利用ExtJS的QuickTips特性,我们可以优雅地解决列...