gpt4 book ai didi

extjs - 如何在 ExtJS 网格编辑器中正确设置组合框值?

转载 作者:行者123 更新时间:2023-12-04 23:21:20 26 4
gpt4 key购买 nike

我有一个网格,想使用组合框作为网格单元格编辑器。编辑器组合框的值应该取决于我的数据记录中的多个字段,所以我试图在网格的 beforeEdit 中设置组合框的值听众,像这样:

beforeEdit: function (editor, e, options) {
var field = e.field;
var combo = e.grid.columns[e.colIdx].getEditor(e.record);
var force = e.record.get('forced');
switch (force) {
case 'Y':
combo.setValue("Force active");
break;
case 'N':
combo.setValue("Force inactive");
break;
default:
combo.setValue("Default");
break;
}
}

我的组合框是这样定义的,所以它包含我的 beforeEdit 中显示的每个可能的选项。处理程序:
editor: {
xtype: 'combobox',
forceSelection: true,
editable: false,
triggerAction: 'all',
allowBlank: false,
store: [ 'Default', 'Force active', 'Force inactive' ]
}

我的问题是,虽然在下拉列表中选择了正确的条目,但组合框的文本部分仍然是空的。

enter image description here

如何说服编辑器组合框也在组合的文本框部分显示值?

这是一个带有便笺簿的 Sencha fiddle : https://fiddle.sencha.com/#fiddle/9vd

最佳答案

您应该能够通过使用编辑器组合框组件上的 emptyText 配置来完成您想要做的事情,like so :

beforeEdit: function (editor, e, options) {
var field = e.field;
var combo = e.grid.columns[e.colIdx].getEditor(e.record);
var force = e.record.get('forced');
switch (force) {
case 'Y':
combo.setValue("Force active");
break;
case 'N':
combo.setValue("Force inactive");
break;
default:
combo.setValue("Default");
break;
}
combo.emptyText = combo.getValue();
}

关于extjs - 如何在 ExtJS 网格编辑器中正确设置组合框值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25690505/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com