在代码中已经注释了plugins,因为没注释的话,使用getRowClass改变行的CSS不起作用。
另外想用行扩展的话,把plugins:expander的注释去掉即可,不过这样行的CSS就失效了。
//plugins:expander,
在页面中添加RowExpander.js文件引用,文件见附件。
<script type="text/javascript" src="RowExpander.js"></script>
CSS:
.x-grid-record-red table{
background-color: #FF0000;
color: #0000FF;
}
JS code:
Ext.onReady(function () {
Ext.QuickTips.init();
var reader = new Ext.data.ArrayReader({},
[{
name: 'name'
},
{
name: 'school'
},
{
name: 'sport'
},
{
name: 'year',
type: 'date',
dateFormat: 'Y-m-d'
},
{
name: 'desc'
}]);
var store = new Ext.data.Store({
data: data,
reader: reader,
sortInfo: {
field: 'name',
direction: 'desc'
}
});
var expander = new Ext.grid.RowExpander({
tpl: new Ext.Template('<p><b>Name:</b> {name}</p><br>', '<p><b>Summary:</b> {desc}</p>')
});
var sm = new Ext.grid.CheckboxSelectionModel();
var cm = new Ext.grid.ColumnModel([expander, new Ext.grid.RowNumberer(), sm, {
header: '姓名',
sortable: true,
width: 160,
dataIndex: 'name'
},
{
header: '入学年份',
sortable: true,
width: 160,
dataIndex: 'school',
editor: new Ext.form.TextField({
allowBlank: false
})
},
{
header: '运动爱好',
sortable: true,
width: 160,
dataIndex: 'sport'
},
{
header: '入学年份',
sortable: true,
width: 160,
dataIndex: 'year',
renderer: Ext.util.Format.dateRenderer('Y-m-d')
}]);
grid = new Ext.grid.GridPanel({
title: 'Grid',
store: store,
cm: cm,
width: 600,
height: 500,
frame: true,
enableDragDrop: true,
sm: sm,
viewConfig: {
forceFit: true,
getRowClass: function (record, index, rowParams, store) {
if ('hohai' == record.get('school')) {
return 'x-grid-record-red';
}
}
},
//plugins:expander,
collapsible: true,
tbar: [{
text: 'Add Something',
tooltip: 'Add a new row',
iconCls: 'add',
handler: function () {
alert("Add Something");
}
},
'|', {
text: 'Options',
tooltip: 'Blah blah blah blaht',
iconCls: 'option'
},
'|', {
text: 'Remove Something',
tooltip: 'Remove the selected item',
iconCls: 'remove'
}],
renderTo: document.body
});
});
var data = [
['rowen', 'hohai', 'basketball', '2004-11-01'],
['rowen', 'luoyizhong', 'football', '2000-09-01'],
['rowen', 'jianzhong', 'pingpong', '1992-09-01'],
['rowen', 'jianxiao', 'pingpong', '1992-09-01']];
for (var i = 0; i < data.length; i++) {
data[i].push('OMG');
}
分享到:
相关推荐
在ExtJs中,GridPanel是用于展示数据的常用组件,它可以提供丰富的功能,如排序、分页、筛选等。在实际应用中,我们经常需要监听用户的交互行为,比如双击行进行进一步的操作。本篇文章将深入讲解如何在ExtJs ...
GridPanel是ExtJs中的核心组件之一,它提供了丰富的功能来展示和操作表格数据。你可以通过配置列、排序、过滤、分页等功能来定制你的表格。GridPanel通常与Store配合使用,Store负责管理数据,而GridPanel负责展示...
EXTJS的GridPanel是其组件库中的核心组件之一,用于展示数据网格,广泛应用于Web应用的数据展示。在EXTJS中,ColumnModel是用来定义GridPanel列结构和行为的关键部分。这篇博客"EXTJS_GridPanel_ColumnModel_列的...
总结来说,EXTJS的GridPanel添加“合计”行涉及到View的自定义、数据计算、模板创建、DOM操作以及样式调整等多个环节。通过以上步骤,我们可以实现一个动态更新且具有美观样式的“合计”行。这不仅增强了数据展示的...
### ExtJS GridPanel 使用详解及示例 #### 一、引言 在现代Web应用程序开发中,特别是基于ExtJS框架的应用程序中,`GridPanel`是处理表格数据展示的一个非常重要的组件。它不仅可以帮助开发者轻松地展示数据,还...
ExtJS的GridPanel导出excel文件,方便快捷易懂!
【EXTJS 2.02 GridPanel 知识详解】 EXTJS GridPanel 是EXTJS库中的核心组件之一,尤其在EXTJS 2.02版本中,它提供了强大的表格展示和交互功能,对于初学者来说极具学习价值。GridPanel不仅能够处理基本的表格操作...
### 通过Servlet让Extjs GridPanel显示数据库数据 在现代Web开发中,将数据库中的数据动态展示在前端界面上是一项常见的需求。本文档主要介绍如何通过Servlet技术配合Extjs框架中的GridPanel组件来实现这一功能。 ...
后来公司让改变一个Gridpanel的展现方式,要求实现滚屏的效果。于是我就开始找API相关的功能了。找了很久,也没有找到框架的相应控制方法,然后在网上找了很久,也没有找到有人给去示例,无奈就只能自己写JS来控制...
如果GridPanel被设置为隐藏或者高度小于20像素,函数将不进行任何操作(`if (!g.hideHeaders && (vw || csize.height )) { return; }`)。如果GridPanel是自适应高度的(`g.autoHeight`),则调整内部头部(`...
ExtJS Grid是一个强大的数据展示组件,它允许用户以表格的形式查看和操作大量数据。在实际应用中,数据过滤是常见的需求,以便用户能快速定位到感兴趣的信息。本篇将深入探讨ExtJS Grid的过滤操作,以及如何动态地对...
NULL 博文链接:https://xiaohewoai.iteye.com/blog/409898
ExtJs GridPanel是ExtJs框架中用于展示和管理表格数据的一个重要组件,它提供了丰富的API接口,方便开发者实现复杂的数据操作。根据给出的文件信息,这里将详细解读在ExtJs GridPanel中如何实现基本的增加、删除和...
ExtJS表格面板(GridPanel)是Sencha Ext JS框架中的一个核心组件,它用于展示大量结构化数据。在本文中,我们将深入探讨如何创建并使用一个完整的ExtJS GridPanel实例,以及与其相关的源码和工具。 首先,让我们...
在集成TreePanel和GridPanel时,可能涉及到的概念有:将TreePanel的节点与GridPanel的数据关联,实现点击树节点时动态加载或更新GridPanel的数据,以及可能的父子数据联动操作。 在实际应用中,你可能会学习到以下...
在`gridPanel`中添加按钮通常是指在工具栏上增加操作元素,以便用户可以执行特定的动作,如导出数据、编辑记录或者执行自定义操作。 1. **添加工具栏**: 在`gridPanel`中,我们可以通过配置选项来添加一个工具栏。...
GridPanel是ExtJS中的重要组件,用于展示和操作二维数据。它具备分页、排序、过滤、编辑等功能,适用于显示大量结构化数据。GridPanel的构建通常包括以下几个步骤: 1. 定义数据模型(Model):这是GridPanel的基础...
ExtJS GridPanel 单元格无法复制问题解决方案 ExtJS 是一个功能强大的 JavaScript 框架,广泛应用于 Web 开发中。但是,在使用 ExtJS 的 GridPanel 组件时,可能会遇到单元格无法选中复制的问题,特别是在 IE ...
在深入探讨ExtJS.GridPanel中的日期格式设置之前,我们首先简要回顾一下ExtJS是什么以及GridPanel组件的基本功能。ExtJS是一个用JavaScript编写的开源框架,用于构建交互式的Web应用程序,它提供了丰富的UI组件和...