笑看人生的专栏

行到水穷处,坐看云起时。

extjs 3.4 实现EditorGridPanel不同行同一列显示不同的Editor

需求:想在EditorGridPanel的不同行的同一列显示不同的编辑器

代码:

方法一:

this.grid.on("cellclick",function(grid,rowIndex,colIndex,e){

var  innerName = grid.store.getAt(rowIndex).data.innerName;

var column = grid.getColumnModel().columns[colIndex];

if(innerName=="startTime"){

this.startTime = new Ext.form.DateField({

format:'Y-m-d',

name:'startTime',

readOnly:false,

minValue:new Date()

});

column.setEditor(this.startTime);

}

if(innerName=="home"){

this.home = new Ext.form.TextField({

省略

});

column.setEditor(this.home);

}

});


方法二:

this.grid.getColumnModel().getCellEditor=function(colIndex,rowIndex){

var  innerName = Ext.getCmp("grid").getStore().getAt(rowIndex).data.innerName;

if(innerName=="startTime"){

this.startTime = new Ext.form.DateField({

format:'Y-m-d',

name:'startTime',

readOnly:false,

minValue:new Date()

});

return new Ext.grid.GridEditor(this.startTime);

}

return Ext.grid.ColumnModel.prototype.getCellEditor.call(this,colIndex,rowIndex);

};

阅读更多
个人分类: extjs
上一篇ireport3.7导出报表报异常:Error retrieving field value from bean :XX ;NoSuchMetho dException:Unknown proper
下一篇Itext+POI将Excel转换为PDF
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭