如何在 ExtJS Grid 的 summaryRenderer 中访问组名
Posted
技术标签:
【中文标题】如何在 ExtJS Grid 的 summaryRenderer 中访问组名【英文标题】:How to acess Group Name inside the summaryRenderer in ExtJS Grid 【发布时间】:2013-07-24 09:20:19 【问题描述】:我在网格中使用“分组摘要”功能。我正在尝试从 summaryrenderer 访问 name。
有什么方法可以访问summaryrender里面的name
Ext.define('TestResult',
extend: 'Ext.data.Model',
fields: ['student', 'subject',
name: 'mark',
type: 'int'
]
);
Ext.create('Ext.grid.Panel',
width: 200,
height: 240,
renderTo: document.body,
features: [
groupHeaderTpl: 'Subject: name',
ftype: 'groupingsummary'
],
store:
model: 'TestResult',
groupField: 'subject',
data: [
student: 'Student 1',
subject: 'Math',
mark: 84
,
student: 'Student 1',
subject: 'Science',
mark: 72
,
student: 'Student 2',
subject: 'Math',
mark: 96
,
student: 'Student 2',
subject: 'Science',
mark: 68
]
,
columns: [
dataIndex: 'student',
text: 'Name',
summaryType: 'count',
summaryRenderer: function(value)
// Should return : Math Total: / Science Total:like this.
return Ext.String.format('0 student1', value, value !== 1 ? 's' : '');
,
dataIndex: 'mark',
text: 'Mark',
summaryType: 'average'
]
);
像这样:
感谢您的帮助!!!
【问题讨论】:
我使用了 summaryType: function(records) var myGroupName = records[0].get('subject'); return myGroupName+'总计:'; 【参考方案1】:我试过了
dataIndex: 'student',
text: 'Name',
summaryType: 'count',
summaryType: function(records)
var myGroupName = records[0].get('subject');
return '<b>'+myGroupName+' Totals:</b>';
/*summaryRenderer: function(value)
return Ext.String.format('0 student1', value, value !== 1 ? 's' : '');
*/
,
summaryType 解决了我的问题。
【讨论】:
以上是关于如何在 ExtJS Grid 的 summaryRenderer 中访问组名的主要内容,如果未能解决你的问题,请参考以下文章
extjs5 grid如何实现根据后台返回的数据 合并相应的单元格或是行数