//列模型
var cm = new Ext.grid.ColumnModel([
{header: "姓名", width: 80, dataIndex: "Name", tooltip: "这是您的姓名"},
{header: "性别", width: 40, dataIndex: "Sex", align: "center"},
{header: "生日", width: 150, format: "Y-m-d", dataIndex: "Birthday"},
{header: "学历", width: 80, dataIndex: "Education", align: "center"},
{id: "memo", header: "备注", dataIndex: "Memo"}
]);
在上述代码中,我们看到,每一列的信息都被封装在json对象中,并且组成一个数组传送到Ext.grid.ColumnModel。其中
,dataIndex属性最需要注意,表示记录结构中的name属性值。
我们必须创建DataProxy、DataReader和Store对象,Store对象和GridPanel绑定,GridPanel就会显示Store中的数据了
我们采用json格式来提供测试数据
*
* 显示序号
* 通过序号我们一眼就能看到当前表格的行数。Extjs为此专门写了一个叫Ext.grid.RowNumberer的类,该类通过prototype
* 添加了一个json类型的属性,其内容和列模型中的配置如出一辙,可以参考源码
* 从代码中看出,这是一个特殊的列,没有列头说明性文字,宽度为23像素且被固定,不能排序,也没有菜单。这就是
* RowNumberer
*
* 自定义显示的内容
* 列模型中提供了一个回调函数renderer,该函数可以根据当前列的信息进行再加工,函数定义如下:
* renderer: function(value, metadata, record, rowIndex, colIndex, store){
* }
* 参数说明:
* value:原始值
* metadata: 可能的值为css或attr
* record:Ext.data.Record, GridPanel的记录结构定义
* rowIndex: 行索引
* colIndex: 列索引
* store: Ext.data.Store 数据源
*
* 我们将性别变成对应的图标
* 修改原有的列模型
*/
?
详细解决方案
ext_GridPanel1_二
热度:248 发布时间:2013-11-22 23:06:19.0
相关解决方案