我需要使用JSON数据填充组合框。这是我的商店:
Ext.define('Test.store.GetShopSurvey', {
extend: 'Ext.data.Store',
alias: 'store.GetShopSurvey',
model: 'Test.model.GetShopSurvey',
storeId: 'GetShopSurvey',
proxy: {
type: 'ajax',
url: 'http://localhost/webcontent/CShopSurveyWebApplet&SubFunc=GetShopSurvey',
reader: {
type: 'json',
}
}
});
我的观点:
Ext.define('Test.view.main.Announcement',
{
extend: 'Ext.panel.Panel',
requires: [
'Test.view.main.AnnouncementController',
'Test.view.main.AnnouncementModel',
'Test.store.Personnel'
],
store: {
type: 'GetShopSurvey'
},
其中一项是:
{
xtype: 'combo',
fieldLabel: 'Range',
name: 'Range1',
store: , //here I need store to load. For example json value is {"range": 70}
displayField: 'range',
autoSelect: true,
forceSelection: true,
disabled: true
},
我使用名称和数据类型向模型添加了字段。但是,我不知道如何从JSON获取数据并在组合框中解析它。我评论了我需要把这个值放在哪里。
答案 0 :(得分:0)
你试过了吗?
{
xtype: 'combo',
fieldLabel: 'Range',
name: 'Range1',
store: 'GetShopSurvey',
queryMode: 'local',
displayField: 'range',
valueField: 'range',
autoSelect: true,
forceSelection: true,
disabled: true
}
如果这不起作用,你能不能给我更多信息,比如toolkit和extjs版本
答案 1 :(得分:0)
您应该先创建一个商店实例,然后再使用它。此外,将其autoLoad配置设置为 true 值。
答案 2 :(得分:0)
尝试loadRawData方法
var jsonData = {'range':500};
combo.getStore().loadRawData(jsonData);