`
Rowen
  • 浏览: 83193 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

ExtJs GridPanel 操作

阅读更多
在代码中已经注释了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 ...

    给Extjs的GridPanel增加“合计”行

    总结来说,EXTJS的GridPanel添加“合计”行涉及到View的自定义、数据计算、模板创建、DOM操作以及样式调整等多个环节。通过以上步骤,我们可以实现一个动态更新且具有美观样式的“合计”行。这不仅增强了数据展示的...

    ExtJs GridPanel延时加载.rar

    GridPanel是ExtJs中的核心组件之一,它提供了丰富的功能来展示和操作表格数据。你可以通过配置列、排序、过滤、分页等功能来定制你的表格。GridPanel通常与Store配合使用,Store负责管理数据,而GridPanel负责展示...

    EXTJS_GridPanel_ColumnModel_列的宽度随数据变化而变化

    EXTJS的GridPanel是其组件库中的核心组件之一,用于展示数据网格,广泛应用于Web应用的数据展示。在EXTJS中,ColumnModel是用来定义GridPanel列结构和行为的关键部分。这篇博客"EXTJS_GridPanel_ColumnModel_列的...

    extjs gridpanel例子和简单应用

    ### ExtJS GridPanel 使用详解及示例 #### 一、引言 在现代Web应用程序开发中,特别是基于ExtJS框架的应用程序中,`GridPanel`是处理表格数据展示的一个非常重要的组件。它不仅可以帮助开发者轻松地展示数据,还...

    ExtJS的GridPanel导出excel文件

    ExtJS的GridPanel导出excel文件,方便快捷易懂!

    Extjs2.02 Gridpanel

    【EXTJS 2.02 GridPanel 知识详解】 EXTJS GridPanel 是EXTJS库中的核心组件之一,尤其在EXTJS 2.02版本中,它提供了强大的表格展示和交互功能,对于初学者来说极具学习价值。GridPanel不仅能够处理基本的表格操作...

    通过Servlet让Extjs GridPanel 显示数据库数据.docx

    ### 通过Servlet让Extjs GridPanel显示数据库数据 在现代Web开发中,将数据库中的数据动态展示在前端界面上是一项常见的需求。本文档主要介绍如何通过Servlet技术配合Extjs框架中的GridPanel组件来实现这一功能。 ...

    Extjs让Gridpanel组件自动滚屏

    后来公司让改变一个Gridpanel的展现方式,要求实现滚屏的效果。于是我就开始找API相关的功能了。找了很久,也没有找到框架的相应控制方法,然后在网上找了很久,也没有找到有人给去示例,无奈就只能自己写JS来控制...

    Extjs gridpanel 出现横向滚动条问题的解决方法

    如果GridPanel被设置为隐藏或者高度小于20像素,函数将不进行任何操作(`if (!g.hideHeaders && (vw || csize.height )) { return; }`)。如果GridPanel是自适应高度的(`g.autoHeight`),则调整内部头部(`...

    ExtJS grid过滤操作

    ExtJS Grid是一个强大的数据展示组件,它允许用户以表格的形式查看和操作大量数据。在实际应用中,数据过滤是常见的需求,以便用户能快速定位到感兴趣的信息。本篇将深入探讨ExtJS Grid的过滤操作,以及如何动态地对...

    extjs gridPanel动态 源代码

    NULL 博文链接:https://xiaohewoai.iteye.com/blog/409898

    ExtJs GridPanel简单的增删改实现代码

    ExtJs GridPanel是ExtJs框架中用于展示和管理表格数据的一个重要组件,它提供了丰富的API接口,方便开发者实现复杂的数据操作。根据给出的文件信息,这里将详细解读在ExtJs GridPanel中如何实现基本的增加、删除和...

    ExtJS 表格面板GridPanel完整例子

    ExtJS表格面板(GridPanel)是Sencha Ext JS框架中的一个核心组件,它用于展示大量结构化数据。在本文中,我们将深入探讨如何创建并使用一个完整的ExtJS GridPanel实例,以及与其相关的源码和工具。 首先,让我们...

    Extjs入门教程(treePanel和GridPanel)

    在集成TreePanel和GridPanel时,可能涉及到的概念有:将TreePanel的节点与GridPanel的数据关联,实现点击树节点时动态加载或更新GridPanel的数据,以及可能的父子数据联动操作。 在实际应用中,你可能会学习到以下...

    gridPanel添加按钮

    在`gridPanel`中添加按钮通常是指在工具栏上增加操作元素,以便用户可以执行特定的动作,如导出数据、编辑记录或者执行自定义操作。 1. **添加工具栏**: 在`gridPanel`中,我们可以通过配置选项来添加一个工具栏。...

    ExtJS介绍以及GridPanel

    GridPanel是ExtJS中的重要组件,用于展示和操作二维数据。它具备分页、排序、过滤、编辑等功能,适用于显示大量结构化数据。GridPanel的构建通常包括以下几个步骤: 1. 定义数据模型(Model):这是GridPanel的基础...

    extjs单元格无法复制

    ExtJS GridPanel 单元格无法复制问题解决方案 ExtJS 是一个功能强大的 JavaScript 框架,广泛应用于 Web 开发中。但是,在使用 ExtJS 的 GridPanel 组件时,可能会遇到单元格无法选中复制的问题,特别是在 IE ...

    EXTJS.GRIDPANEL 日期格式

    在深入探讨ExtJS.GridPanel中的日期格式设置之前,我们首先简要回顾一下ExtJS是什么以及GridPanel组件的基本功能。ExtJS是一个用JavaScript编写的开源框架,用于构建交互式的Web应用程序,它提供了丰富的UI组件和...

Global site tag (gtag.js) - Google Analytics