嗨,我知道这个问题标题有点模糊。
我有一个网格列,想要实现数据评级。
我使用renderer
并返回div但现在我不知道要获取元素。
我的代码如下
{
text: 'rank',
dataIndex: 'rank',
flex: 1,
tdCls: 'column-rank',
renderer: function(value) {
return '<div class=rating>' +
'<div data-rating="1"></div>' +
'<div data-rating="2"></div>' +
'<div data-rating="3"></div>' +
'<div data-rating="4"></div>' +
'<div data-rating="5"></div>' +
'</div>'
}
}
答案 0 :(得分:0)
我想你必须看一下CD上提到的rating widget。
如果您仍想自行实施评级,我猜您必须为其编写自定义组件,请使用网格商店中的评级数据设置它并引用renderer
中的某一行。
如果您仍想使用div
自行实施评分,可以执行以下操作来选择data-rating
div:
Ext.query('div[data-rating="5"]', myRowComponent.getEl());
答案 1 :(得分:0)
renderer函数在调用时会传递几个参数。 如文档中所述,其中之一是记录。 您可以使用此参数来提取当前行的记录。您可以像访问模型字段record.get('fieldName')一样访问记录字段。 伪代码示例:
renderer: function(value, metaData, record, rowIndex, colIndex) {
var fieldValue1 = record.get('fieldName1');
return '<div class=rating>' +
'<div data-rating="1">' + fieldValue1 + '</div>' +
...
'</div>';
}