在我的extjs专栏模型中,以下是我的内容:
new Ext.grid.ColumnModel({
columns: [
{id:'msgId',hidden: false, dataIndex: 'msgId'}
]
现在,我希望在模型中添加另一列,该列将是一个带文本的超链接:“查看消息详细信息”,单击时应调用javascript函数fnMessageDetails('msgId')。
如何将此列添加到模型中?我可以添加没有dataIndex
属性的列吗?
答案 0 :(得分:2)
我可以添加没有dataIndex属性的列吗?
是的,如果您使用自己的渲染器或模板列,则没问题。
如何将此列添加到模型中?
您可以使用renderer
配置或templatecolumn
。例如:
new Ext.grid.ColumnModel({
columns: [
{id:'msgId',hidden: false, dataIndex: 'msgId'},
{
header: 'info',
xtype: 'templatecolumn',
tpl: '<a href="#">View Message Details</a>',
listeners: {
click: function(col, grid, row){
fnMessageDetails(grid.store.getAt(row).get('msgId'));
return false;
}
}
}
]
});
这是demo