我对此路径上的 dgrid-master/editor_more_widgets.html 测试文件有疑问:
https://github.com/SitePen/dgrid/blob/master/test/editor_more_widgets.html
也许您应该下载整个软件包以查看该文件。无论如何,有没有办法修复“Select Store”列,这样它会显示标签而不是值,就像“FilteringSelect Store”列一样?
我对此路径上的 dgrid-master/editor_more_widgets.html 测试文件有疑问:
https://github.com/SitePen/dgrid/blob/master/test/editor_more_widgets.html
也许您应该下载整个软件包以查看该文件。无论如何,有没有办法修复“Select Store”列,这样它会显示标签而不是值,就像“FilteringSelect Store”列一样?
为此,我创建了一个自定义插件。关键部分是 renderCell 函数:
define([
"dojo",
"sb",
"put-selector/put",
"dgrid/editor",
"dijit/form/Select"
], function(dojo, sb, put, editor, Select){
dojo.global.starbug.grid.columns = dojo.global.starbug.grid.columns || {};
dojo.global.starbug.grid.columns.select = function(column){
//populate the cell with the label or value
column.renderCell = function(object, value, cell, options, header){
items = column.editorInstance.getOptions();
for (var i in items) {
if (value == items[i].value) value = items[i].label;
}
put(cell, 'span.'+value.replace(/ /g, '-').toLowerCase(), value);
};
column.editorArgs = {
style:'width:100%',
labelAttr:'label',
store:sb.get(column.from, 'select')
};
column = editor(column, Select, "dblclick");
return column;
};
});
请注意,这sb
是我用来提供商店的自定义模块。您可以相应地对其进行修改。