关键字: ext 在Ext中,Grid的使用包括以下几个步骤:
1、获取数据集,示例代码如下js 代码
var myData = [ - ['Apple',29.89,0.24,0.81,'9/1 12:00am'],
['Ext',83.81,0.28,0.34,'9/12 12:00am'], - ['Google',71.72,0.02,0.03,'10/1 12:00am'],
['Microsoft',52.55,0.01,0.02,'7/4 12:00am'], - ['Yahoo!',29.01,0.42,1.47,'5/22 12:00am']
];
该数据集是由数组构成,包括5条记录,每条记录包括五个字段:一个字符串型、三个浮点型和一个日期型。
2、将数据集进行装载,这个过程需要设置两件事,一件是指定要装载的数据和代理形式,一件是指定读取时规则,示例代码如下js 代码
var ds = new Ext.data.Store({ - proxy: new Ext.data.MemoryProxy(myData),
reader: new Ext.data.ArrayReader({id: 1}, [ - {name: 'company'},
{name: 'price', type: 'float'}, - {name: 'change', type: 'float'},
{name: 'pctChange', type: 'float'}, - {name: 'lastChange', type: 'date', dateFormat: 'n/j h:ia'}
]) - });
ds.load();
第一件事(指定要装载的数据和代理形式),是通过proxy: new Ext.data.MemoryProxy(myData)完成得,它指定了装载数据为myData,代理形式为内存代理。代理形式除了内存方式之外还有HttpProxy和ScriptTagProxy等形式。 第二件事(指定读取时规则),是通过reader: new Ext.data.ArrayReader({id: 1}, [……]) 完成的,这里它指定为数组读取,并指定数据项的名称和类型。
3、设置页面显示列表参数,示例代码如下:js 代码
var colModel = new Ext.grid.ColumnModel([ - {header: "Company", width: 120, sortable: true, dataIndex: 'company'},
{header: "Price", width: 90, sortable: true, dataIndex: 'price'}, - {header: "Change", width: 90, sortable: true, dataIndex: 'change'},
{header: "% Change", width: 90, sortable: true, dataIndex: 'pctChange'}, - {header: "Last Updated", width: 120, sortable: true,
renderer: Ext.util.Format.dateRenderer('m/d/Y'), dataIndex: 'lastChange'} - ]);
在这里它指定了每一列的显示表头名、宽度、是否可以排序,以及数据引用的名称。在数据显示时可以通过renderer进行格式化设置,使数据显示更友好。
4、构建列表并显示,示例代码如下js 代码
var grid = new Ext.grid.Grid('grid-example', {ds: ds, cm: colModel}); - grid.render();
grid.getSelectionModel().selectFirstRow();
这里通过构建Grid对象进行了列表设置,包括数据源ds和字段模型colModel,这两项就是前面部分准备的。grid.render();——指得是将构造的Grid呈现到页面grid.getSelectionModel().selectFirstRow();——将第一行作为默认选择行