var cm = new Ext.grid.ColumnModel({ defaults: { sortable: true // columns are not sortable by default }, columns: [ {header:'NO.',renderer:function(value,cellmeta,record,rowIndex){return rowIndex+1;}},//以前的版本 new Ext.grid.RowNumberer(), {id: 'description',header: '物料编号',dataIndex: 'code'}, {header: '简称',dataIndex: 'shortName'}, {header: '型号',dataIndex: 'style',renderer:renderfun}, {header: '单位',dataIndex: 'unitName',width: 50}, {header:'日期',dataIndex:'date',type:'date',renderer:Ext.util.Format.dateRenderer('Y年m月d日')}, { header: '加工状态', dataIndex: 'TASKSSTATUS', renderer:function(value,cellmeta,record,rowIndex,columnIndex,store){ if(value==0){ return '完成'; }if(value==1){ return '待加工'; }if(value==2){ return '正在加工'; } }, editor:new fm.ComboBox({ typeAhead: true,//自动将第一个搜索到的选项补全输入 triggerAction: 'all', mode:'local',//读取当前值 lazyRender: true, listClass: 'x-combo-list-small', store:new Ext.data.SimpleStore({ data:[[0,'完成'],[1,'待加工'],[2,'正在加工']], fields:[{name:'sId',type:'int'},{name:'sName'}] }), valueField:'sId', displayField:'sName' }) } ] }); function renderfun(value,cellmeta,record,rowIndex,columnIndex,store){ var str="<input type='button' value='查看详细信息' onclick='alert(\""+ "这个单元格的值是:"+value+"\\n"+ "这个单元格的配置是:{cellId:"+cellmeta.cellId+",id:"+cellmeta.id+",css:"+cellmeta.css+"}\\n"+ "这个单元格的对应行的record是:"+record+",一行的数据都在这里边\\n"+ "这是第"+rowIndex+"行\\n"+ "这是第"+columnIndex+"列\\n"+ "这个表格对应的Ext.data.Store在这里:"+store+",随便用啦。"+ "\")'>"; return str; } var grid=new Ext.grid.GridPanel({ renderTo: 'editor-grid', ds:ds, cm:cm, bbar:new Ext.PagingToolbar({//分页 pageSize:10, store:ds, displayInfo:true, displayMsg:'显示第{0}条到{1}条记录,一共{2}条', emptyMsg:"没有记录" }) }); Ext.get('id').on('click',function(){ ds.remove(ds.getAt(1)); });
renderer:可以读到的全部参数
备注:record 是这行的所有的数据。可以通过record.data["id"] 获得
renderer 中也可以传自定义的参数。。这次没有找到,下次补充哦O(∩_∩)O~