Ext grid属性

转自:http://qinya.iteye.com/blog/610512

 

 

表格的属性分为配置属性(在操作表格时无法修改)
以及其他可读写属性,方法,以及事件。
如下:

配置属性


a) activeItem:         渲染布局时激活的子元素。
b) applyTo:            指定渲染对象。
c) autoDestroy:        当容器的子元素从容器中移除时是否自动销毁。
d) autoExpandColumn:  指定自动填充表格剩余区域的列id
e) autoExpandMax:     可自动扩张的最大宽度。
f) autoExpandMin:     可自动扩张的最小宽度
g) autoHeight:        自动扩充高度
h) autoShow:           是否自动显示
i) autoWidth:         自动扩充宽度
j) bbar/tbar:          底部/顶部状态栏
k) bufferResize:       容器再布局的缓冲频率
l) colModel/cm:        列模式
m) cls:                  组件的额外css格式。
n) collapsible:        是否显示快捷隐藏按钮
o) defaults:            指定默认配置。
p) disableSelection:   是否禁止选择表格行或列
q) enableDragDrop:     是否允许表格列的拖放操作。
r) enableHdMenu:       是否显示表格列的菜单。
s) frame:               边框是否显示
t) loadMask:           是否显示加载动画
u) selModel/sm:        表格选择模式
v) store:             表格数据集
w) stripeRows:          是否显示分隔线。
x) title:                 表格标题
y) viewConfig: {
       forceFit: true   //自适应每个列的宽度
    }
z)sortable:   实现排序 
  Ext.grid.ColumnModel{
   {header: "编号" , dataIndex:"id",sortable: true }
...
}

aa)sortInfo: 解决中文排序
var store=new Ext.data.Store({
  proxy:new Ext.grid.MemoryProxy(data),
  read:new Ext.data.ArrayReader({},[
       {name:id},
       ...
]),
sortInfo:{field:"name", direction:"ASC"}

}) ;
然后在重写Ext.data.Store的applySort函数
Ext.data.Store.prototype.applySort=function(){
if(this.sortInfo&&!this.remoteSort){
    var s=this.sortInfo, f=s.field;
var st=this.fields.get(f).sortType;
var fn=function(r1,r2){
   var v1=st(r1.data[f]), v2=st(r2.data[f]);
  if(typeof(v1)=="string"){
     return v1.localCompare(v2);
}
return v1>v2?1:(v1<v2?-1:0);
};
this.data.sort(s.direction,fn);
if(this.snapshot && this.snapshot != this.data){
    this.snapshot.sort(s.direction.fn);
}
}
};
将这段代码加到ext-all.js最后面,或者放到html页面最上面,总之在ext初始化之后,实际代码调用它之前执行

显示日期类型数据:{name:data,type:'data',dataFormat:'y-m-dTH:i:s'}
{name:data,type:'data',renderer:render}

function render(value,cellmeta,record,rowIndex,columnIndex,store){
value:对应单元格的值
cellmeta,单元格的属性(id css)
record,这行数据对象如果获取其他列使用 record.data['id']
rowIndex,行号(当前页中所有记录的顺序)
columnIndex,当前列号
store 购置表单时传递的ds,
}






方法


a) getColumnModel():       得到表格列模型
b) getGridEl():            得到表格下的元素
c) getPosition():          得到组件的当前位置,返回一个数组
d) getSelectionModel():    得到选中模型
e) getSize():              得到组件大小
f) getStore():             得到组件的数据集
g) getView():              得到表格的GridView对象。
h) hide():                 隐藏当前组件
i) isVisible():            判断当前组件是否显示
j) setDisabled( Boolean):  设置组件的可用性
k) un():                   解除组件的监听
l) on():                     为组件添加监听
on ( String eventName, Function handler, [Object scope] )
       eventName:          添加监听的名称
        handler:            事件处理函数
        scope:               事件响应的作用域,
                                包括scope,delay,single,buffer。




例如:
var jsonArray1 = [];
var selections = grid.getSelectionModel().getSelections();
for (var i = 0; i < selections.length; i++) {
var record = selections[i];
    jsonArray1.push(record.data);
   alert('提示',selections.length+record.get("ODEFINEID") + "," +     record.get("ODEFINENAME") + "," + record.get("DATASOURCEID"));
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值