ExtJS实现表格控件详解
需积分: 9 82 浏览量
更新于2024-08-18
收藏 895KB PPT 举报
"这篇文档主要介绍了ExtJS中的表格控件Ext.grid.GridPanel的使用方法,包括如何制作简单的表格,以及涉及到的关键组件如ColumnModel和数据存储器。"
在ExtJS中,`Ext.grid.GridPanel`是用于展示数据并支持分页的控件,它提供了丰富的功能,如排序、缓存、拖动列、隐藏列、行号显示、列汇总以及单元格编辑等。GridPanel是Ext.Panel的子类,它的xtype是'grid'。在构建表格时,有两个核心组成部分:列定义(ColumnModel)和数据存储器(Data Store)。
列定义(ColumnModel)
列定义决定了表格的头部显示和数据绑定。例如,通过创建一个`Ext.grid.ColumnModel`实例来设定列的结构。以下是一个简单的示例:
```javascript
var cm = new Ext.grid.ColumnModel([
{ header: '编号', dataIndex: 'id' },
{ header: '名称', dataIndex: 'name' },
{ header: '描述', dataIndex: 'descn' }
]);
```
这里,`header`属性用于设置列头显示的文本,而`dataIndex`属性则对应数据源中的字段名。设置`cm.defaultSortable=true`可以让所有列默认可排序。
数据存储器(Data Store)
数据存储器负责管理表格的数据,可以是`Ext.data.Store`的实例,根据数据源的不同,还可以选择`JsonStore`、`SimpleStore`或`GroupingStore`等。例如,如果数据来源于JSON格式,可以使用`JsonStore`:
```javascript
var store = new Ext.data.JsonStore({
url: 'your_data_source_url',
root: 'rows',
fields: ['id', 'name', 'descn']
});
```
这里的`url`是数据来源的URL,`root`指定JSON数据中包含记录的数组名,`fields`定义了与列定义匹配的字段。
创建简单表格的步骤
1. 定义ColumnModel,包含表格的所有列。
2. 创建数据存储器,指定数据来源和结构。
3. 创建GridPanel实例,将ColumnModel和Store作为参数传入。
```javascript
var grid = new Ext.grid.GridPanel({
title: '简单表格',
store: store,
cm: cm,
width: 400,
height: 200,
renderTo: Ext.getBody() // 渲染到页面上
});
```
以上代码创建了一个简单的表格,并将其渲染到页面上。
`Ext.grid.GridPanel`是ExtJS中用于数据展示的强大工具,结合ColumnModel和各种数据存储器,可以灵活地实现各种数据表格的需求。通过理解这些基本概念和步骤,开发者能够构建出功能丰富的交互式表格应用。
2019-04-12 上传
2009-12-02 上传
2016-10-12 上传
2019-07-11 上传
2022-09-24 上传
2008-09-06 上传
2011-05-18 上传
2020-05-11 上传
2013-09-11 上传
辰可爱啊
- 粉丝: 18
- 资源: 2万+
最新资源
- C语言数组操作:高度检查器编程实践
- 基于Swift开发的嘉定单车LBS iOS应用项目解析
- 钗头凤声乐表演的二度创作分析报告
- 分布式数据库特训营全套教程资料
- JavaScript开发者Robert Bindar的博客平台
- MATLAB投影寻踪代码教程及文件解压缩指南
- HTML5拖放实现的RPSLS游戏教程
- HT://Dig引擎接口,Ampoliros开源模块应用
- 全面探测服务器性能与PHP环境的iprober PHP探针v0.024
- 新版提醒应用v2:基于MongoDB的数据存储
- 《我的世界》东方大陆1.12.2材质包深度体验
- Hypercore Promisifier: JavaScript中的回调转换为Promise包装器
- 探索开源项目Artifice:Slyme脚本与技巧游戏
- Matlab机器人学习代码解析与笔记分享
- 查尔默斯大学计算物理作业HP2解析
- GitHub问题管理新工具:GIRA-crx插件介绍