用JSON文件ExtJs 4.x.x填充组合框

用JSON文件ExtJs 4.x.x填充组合框,json,extjs,combobox,populate,Json,Extjs,Combobox,Populate,当这个加载时,selectcombo是空的,没有加载任何内容,我已经搜索了很多网站,找不到任何帮助。任何建议都很好您要查找的xtype是combo,store类型是JsonStore,因为ArrayStore不会像您预期的那样从类型根目录解释json。不过,我不能在这里模拟ajax请求 Ext.onReady(函数(){ Ext.define('Form'{ 扩展:“Ext.data.Model”, 字段:[{ 名称:'类型', 键入:“字符串” }] }); var store=Ext.cr

当这个加载时,selectcombo是空的,没有加载任何内容,我已经搜索了很多网站,找不到任何帮助。任何建议都很好

您要查找的
xtype
combo
store
类型是
JsonStore
,因为
ArrayStore
不会像您预期的那样从
类型
根目录解释
json
。不过,我不能在这里模拟ajax请求

Ext.onReady(函数(){
Ext.define('Form'{
扩展:“Ext.data.Model”,
字段:[{
名称:'类型',
键入:“字符串”
}]
});
var store=Ext.create('Ext.data.store'{
型号:'表格',
数据:[{
类型:“aaaaaaaaa”
}, {
类型:“Bbbbbb”
}, {
类型:“CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
}, {
类型:“ddddd”
}]
});
Ext.define('DForms'{
扩展:“Ext.panel.panel”,
车身衬垫:12,
布局:“自动”,
autoScroll:是的,
项目:[{
xtype:'组合',
queryMode:'本地',
emptyText:“选择条件”,
店:店,,
displayField:'类型',
valueField:'类型',
宽度:200,
typeAhead:对
}],
});
Ext.create('DForms'{
renderTo:Ext.getBody()
});
});

您要查找的
xtype
combo
store
类型是
JsonStore
,因为
ArrayStore
不会像您预期的那样从
类型
根目录解释
json
。不过,我不能在这里模拟ajax请求

Ext.onReady(函数(){
Ext.define('Form'{
扩展:“Ext.data.Model”,
字段:[{
名称:'类型',
键入:“字符串”
}]
});
var store=Ext.create('Ext.data.store'{
型号:'表格',
数据:[{
类型:“aaaaaaaaa”
}, {
类型:“Bbbbbb”
}, {
类型:“CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
}, {
类型:“ddddd”
}]
});
Ext.define('DForms'{
扩展:“Ext.panel.panel”,
车身衬垫:12,
布局:“自动”,
autoScroll:是的,
项目:[{
xtype:'组合',
queryMode:'本地',
emptyText:“选择条件”,
店:店,,
displayField:'类型',
valueField:'类型',
宽度:200,
typeAhead:对
}],
});
Ext.create('DForms'{
renderTo:Ext.getBody()
});
});

我认为字段中的类型区分大小写。所以试试看

 Ext.define('Form', {
    extend: 'Ext.data.Model',
    fields: [
        {name:'type', type:'String'}
    ]
});

var store = Ext.create('Ext.data.ArrayStore', {
    model: 'Form',
    autoLoad: true,
    proxy: {

        type: 'ajax',
        url: '/test.json',
        reader: {
            type : 'json',
            root: 'types'
        }
    }
});

Ext.define('DForms', {
    extend: 'Ext.panel.Panel',
    bodyPadding: 12,
    layout : 'auto',
    autoScroll : true,

        items: [{
            xtype:'selectcombo',
            queryMode:'local',
            emptyText: 'Select Condition',
            store:store,
            displayField: 'type',
            valueField: 'type',
            width : 200,
            typeAhead : true
        }],
});

如Tejas1991所指出的,如果仍然无法工作,请检查json的内容

我认为字段中的类型区分大小写。所以试试看

 Ext.define('Form', {
    extend: 'Ext.data.Model',
    fields: [
        {name:'type', type:'String'}
    ]
});

var store = Ext.create('Ext.data.ArrayStore', {
    model: 'Form',
    autoLoad: true,
    proxy: {

        type: 'ajax',
        url: '/test.json',
        reader: {
            type : 'json',
            root: 'types'
        }
    }
});

Ext.define('DForms', {
    extend: 'Ext.panel.Panel',
    bodyPadding: 12,
    layout : 'auto',
    autoScroll : true,

        items: [{
            xtype:'selectcombo',
            queryMode:'local',
            emptyText: 'Select Condition',
            store:store,
            displayField: 'type',
            valueField: 'type',
            width : 200,
            typeAhead : true
        }],
});

如Tejas1991所指出的,如果仍然无法工作,请检查json的内容

给出json文件内容。这将有助于找到issueGive json文件内容。这将有助于找到IssueEyes,与你的和bluehipy组合,它起作用了:)是的,与你的和bluehipy组合,它起作用了:)它不让meit不让我