我有ExtJS Grid。我正在使用Roweditor插件与组合框。当我点击网格的任何一行时,我可以看到带更新和取消按钮的编辑器。ExtJS使用Roweditor组合无法正常工作
现在我面对的问题是当我点击行并且行编辑器被启用时,如果当前显示的值与组合商店匹配,那么它应该显示为选中状态,但它没有显示。如果我使用valueField
和displayField
的值,那么我可以看到它被选中。
我想我不能发布的图像,所以我在这里给你的代码:
如果我在组合的商店中使用两个valueField
和displayField
的价值,那么我可以看到所选的值。
editor: {
allowBlank: true,
selectOnFocus:true,
editable:true,
xtype:'combobox',
valueField:'id',
displayField:'status',
triggerAction:'all',
queryMode: 'local',
store:[['NOT_STARTED','NOT_STARTED'],
['IN_PROGRESS','IN_PROGRESS'],
['COMPLETED','COMPLETED']
],
value:0,
lazyRender: true
}
当我在不同的组合的商店,这是理想的情况下分配displayField
和valueField
,它没有显示我的选择。
editor: {
allowBlank: true,
selectOnFocus:true,
editable:true,
xtype:'combobox',
valueField:'id',
displayField:'status',
triggerAction:'all',
queryMode: 'local',
store:[['1','NOT_STARTED'],
['2','IN_PROGRESS'],
['3','COMPLETED']
],
value:0,
lazyRender: true
}
请告诉我这里有什么问题。
嗨感谢您的回复,我已按照您的建议进行了更改,但不知何故,它对我无效。这是代码。我的店是
var data = {
root: [
{
"objectType":"com.yagna.common.domain.Project",
"objectId":"3072",
"expectedEndDate":"",
"startDate":"2011-06-27 13:06:00.0",
"name":"Milestone-11",
"actualEndDate":"",
"id":"4376",
"Status":"NOT_STARTED"
}] };
my Column is
{id: 'Status',width: 20,text: 'Status',dataIndex: 'Status',filter: {type: 'combobox'},sortable: true, groupable: false,
editor:{
allowBlank: true,
xtype:'combobox',
valueField:'field1',
displayField:'field2',
triggerAction:'all',
mode: 'local',
store: [['0','NOT_STARTED'],['1','IN_PROGRESS'],['2','COMPLETED']],
value:0,
lazyRender: true
} },
Please suggest what is missing here
嗨感谢您的回复,我已按照您的建议进行了更改,但不知何故,它对我无效。这是代码。 – Anup 2012-01-13 10:38:03
根据答案,如果您希望组合在打开编辑器时与某个值匹配,则必须将“状态”的值更改为一个数字。在上面提供的代码中,“NOT_STARTED”将不得不变为“1”。当然,当你不处于编辑模式时,这会使它成为'1'。所以你必须在“状态”列中添加一个“渲染器”配置选项。我会稍后发布这段代码。 – Geronimo 2012-01-13 17:45:27
非常感谢您的帮助。这现在适合我 – Anup 2012-01-16 11:15:30