renderer可以格式化该列显示的数据格式或者按照你自定义的脚本显示最终数据样子。如:
var grid = new Ext.grid.GridPanel({
store: store,
columns: [
{id:'company',header: "Company", width: 160, sortable: true, dataIndex: 'company'},
{header: "Price", width: 75, sortable: true, renderer: 'usMoney', dataIndex: 'price'},
{header: "Change", width: 75, sortable: true, renderer: change, dataIndex: 'change'},
{header: "% Change", width: 75, sortable: true, renderer: pctChange, dataIndex: 'pctChange'},
{header: "Last Updated", width: 85, sortable: true, renderer: Ext.util.Format.dateRenderer('m/d/Y'), dataIndex: 'lastChange'}
],
stripeRows: true,
autoExpandColumn: 'company',
height:350,
width:600,
title:'Array Grid'
});
function change(val){
if(val > 0){
return '<span style="color:green;">' + val + '</span>';
}else if(val < 0){
return '<span style="color:red;">' + val + '</span>';
}
return val;
}
renderer原型参数:
renderer:function(value, cellmeta, record, rowIndex, columnIndex, store){
}
参考资料:
http://wenku.baidu.com/link?url=9I5ZRL8j95sPmGiSFst0R33MK2yvW9fjAnHU2llEilXvbap0dTZqk9sQbLvOApxUoFLTq4BF7IgzhaDp_1WtmtaymUwbtVZEbrIap_TfTwi
http://blog.youkuaiyun.com/angus_17/article/details/6913108