我正在寻找如何解决这个问题。我有什么:
我的渲染器是:
renderer: function(value) {
return value || "—";
}
因此,如果定义value
参数,则会显示,否则我们会显示–
。
编辑是:
editor: {
xtype: "combobox",
store: Ext.create("Ext.data.Store", { ... }),
displayField: "name",
valueField: "id",
queryMode: "local"
}
编辑完成后,将返回valueField
的值并将其作为参数推送到渲染器中,因此我会在单元格中看到条目的ID。
我的问题是我想在单元格中显示displayField
的值(将其推入渲染器),但record
应包含条目的ID(valueField
值)。
提前致谢。
答案 0 :(得分:1)
如果renderer的文档正确,则传递到renderer
的第三个参数为record
。您可以在renderer
中修改它(设置'ID'):
renderer: function(value, meta, record) {
// value == valueField
record.set('ID', value);
var displayValue;
// displayValue (corresponding to valueField) can be retrieved from combo's store:
displayValue = combosStore.find('id', value).get('name');
return displayValue || "—";
}