Extjs中grid 的ColumnModel 属性配置
一, 用数组的方式配置ColumnModel
var colModel = new Ext.grid.ColumnModel([
{ header:'编号', dataIndex:'id',width:200},
{ header:'名称', dataIndex:'name',width:300}
]};
注意:上述写法ColumnModel的构造参数必须是一个数组,哪怕只有一列。
二、 用JSON对象的方式配置ColumnModel
var colModel = new Ext.grid.ColumnModel({
columns:[ --列集合的定义
{ header:'编号', dataIndex:'id',width:200},
{ header:'名称', dataIndex:'name',width:300}
],
defaults:{ --公共属性配置
sortable:true,
menuDisabled:true,
width:100
},
listeners:{ --监听事件
"widthchange":function(cm,colIndx,width){
saveConfig(colIndex,width);
}
}
});
这种写法的好处是更加的面向对象,也便于继承。
三、常用属性介绍:
header 设置列标题
dataIndex 设置列对应数据源的name值
editor 设置在编辑状态下,指定编辑器
align 设置列标题的对齐方式
widht 设置列的宽度
css 设置列头的CSS样式
fixed 表示列头的宽度是否可以改变,默认为true
hidden 表示是否是隐藏列,默认为false
hideable 表示是否禁止用户隐藏该列,默认为false
menuDisabled 表示是否禁止列菜单 默认为false
resizable 表示是否禁止列可变大小,默认为false
sortable 表示列是否可排序,默认为false
tooltip 表示列头部显示的提示文字
renderer 用于加工单元格的原始数据,
id 列的标识,列的所有单元格包括头部都是用这个值来创建CSS的class属性
格式为:
x-grid3-td-id 单元格样式
x-grid3-td-hd-id 列头样式
四、常用方法介绍:
findColumnIndex 根据dataIndex里的值,返回列的索引
getColumnById 返回指定ID的列
getColumnCount 返回列数
getColumnId 返回指定index列的ID
....
该类有很多方法来操作列,具体查看API
五、一个比较完整的实例
Ext.grid.ColumnModel([{
id: 列的唯一标识,可以用于定义css,如:(.x-grid-td-topic b { color:#333 })
header: 列的名称
dataIndex: 在store中本列值的索引
sortable: 设置本列是否支持排序
renderer: 列值的渲染函数,定义函数如:function renderName(value, cellmeta, record, rowIndex, columnIndex, store){}
width : 列宽
hidden:true 是否隐藏本列
}]);
//value是当前单元格的值
//cellmeta里保存的是cellId单元格id,id不知道是干啥的,似乎是列号,css是这个单元格的css样式。
//record是这行的所有数据,你想要什么,record.data["id"]这样就获得了。
//rowIndex是行号,不是从头往下数的意思,而是计算了分页以后的结果。
//columnIndex列号太简单了。
//store,这个厉害,实际上这个是你构造表格时候传递的ds,也就是说表格里所有的数据,你都可以随便调用。
function renderDescn(value, cellmeta, record, rowIndex, columnIndex, store) {
var str = "<input type='button' value='查看详细信息' onclick='alert(""" +
"这个单元格的值是:" + value + "" +
"这个单元格的配置是:{cellId:" + cellmeta.cellId + ",id:" + cellmeta.id + ",css:" + cellmeta.css + "}""n" +
"这个单元格对应行的record是:" + record + ",一行的数据都在里边" +
"这是第" + rowIndex + "行" +
"这是第" + columnIndex + "列" +
"这个表格对应的Ext.data.Store在这里:" + store + ",随便用吧。" +
""")'>";
return str;
}
Extjs中grid 的ColumnModel 属性配置的更多相关文章
- 64. Extjs中grid 的ColumnModel 属性配置
转自:https://blog.csdn.net/u011530389/article/details/45821945 本文导读:Ext.grid.ColumnModel 该类用于定义表格的列模型, ...
- EXTJS中grid的数据特殊显示,不同窗口的数据传递
//EXTJS中grid的数据特殊显示renderer : function(value, metaData, record, rowIndex, colIndex, store, view) { v ...
- Extjs中GridPanel的各个属性与方法
1.Ext.grid.GridPanel 主要配置项: store:表格的数据集 columns:表格列模式的配置数组,可自动创建ColumnModel列模式 autoExpandColumn:自动充 ...
- Extjs中grid表格中去掉红三角
在编辑Extjs的gridpanel的时候,数据有错误或是修改在每个单元格上都会出现红色的小三角,在每个列上面可以配置allowBlank: false来标识这个不可以为空 有的时候在保存数据时如果不 ...
- Extjs中grid前端分页使用PagingMemoryProxy【二】
在项目中遇到Grid前端分页,本人也是刚接触extjs没多久,为了实现效果,一直找了很久才实现出来,对于代码中的一些也不能详细的说明出来, 不知道能不能帮助到遇到同样问题的朋友,所以将例子代码 ...
- NSS_07 extjs中grid在工具条上的查询
碰到的每个问题, 我都会记下走过的弯路,尽量回忆白天的开发过程, 尽量完整, 以使自己以后可以避开这些弯路. 这个问题在系统中应用得比较多, 在一个gridpanel的工具条上有俩搜索框, panel ...
- NSS_04 extjs中grid接收datetime类型参数列
今天在做用户列表时发现, asp.net mvc3的控制器在返回JsonResult结果时, 会把对象内的DateTime类型成员,解析为类似于\/Date(1238606590509)\/的格式 , ...
- Extjs中grid行的上移和下移
一.将up和down按钮放到tbar中,然后选中grid行即可实现上移和下移 var up = new Ext.Action({ text : 'Up', icon : 'up.png',//或者添加 ...
- extjs中grid中行内文本或图片居中显示
我是看了网上写的方法调试自己的代码来实现的,实现的方式是当加载store数据时改变grid的行样式,源码如下: html代码: <div id="weatherP_grid-body& ...
随机推荐
- Linux上更换默认的java版本
最近注意的一个问题: 在Server上和本地里都使用了相同版本的Tomcat,但是在Server上的tomcat日志里会出现很多java异常的错误, 但是本地的tomcat日志没有出现,初步判断应该是 ...
- PHP7 MongDB 安装与使用
我们使用 pecl 命令来安装: /usr/local/php7/bin/pecl install mongodb 执行成功后,会输出以下结果: …… Build process completed ...
- 使用find命令查找文件
find命令用法 语法: find (选项) (参数) 常用选项: -exec<执行命令>: 假设find指令的回传值为True,就执行该指令; -ls: 假设find指令的回传值为Tru ...
- vue.js学习第一天,了解vue.js
vue.js是一个前端框架,他与jquery不同,jquery是一个js库,而vue.js是js的前端框架. vue.js对我们前端页面入侵比较大,而jquery则不然.那我们还为什么要使用vue.j ...
- time模块的用法和转化关系
Time模块的用法和互相转化关系 UTC(Coordinated Universal Time,世界协调时)亦即格林威治天文时间,世界标准时间.在中国为UTC+8.DST(Daylight Savin ...
- C语言学习笔记之位运算求余
我们都知道,求一个数被另一个数整除的余数,可以用求余运算符”%“,但是,如果不允许使用求余运算符,又该怎么办呢?下面介绍一种方法,是通过位运算来求余,但是注意:该方法只对除数是2的N次方幂时才有效. ...
- Django之 HelloWorld
1.C:\Users\andy>django-admin startproject sundyblog ## 创建项目 C:\Users\andy>cd sundyblog2. ...
- python selenium TouchAction模拟移动端触摸操作(十八)
最近做移动端H5页面的自动化测试时候,需要模拟一些上拉,下滑的操作,最初考虑使用使用selenium ActionChains来模拟操作,但是ActionChains 只是针对PC端程序鼠标模拟的一系 ...
- gdb问题value optimized out
gdb正常print一个变量的值: 但如果gdb调试程序的时候打印变量值会出现<value optimized out> 情况: 可以在gcc编译的时候加上 -O0参数项,意思是不进行编译 ...
- LBA和CHS转换
磁盘填充,先填满一个柱面之后,再填下一个柱面.LBA是从0开始的. LBA = (C-CS)*HPC*SPT + (H-HS)*SPT + (S-SS) C, H, S: 当前的CHS值 CS, HS ...