经过多次研究,这是我的问题:
我尝试使用 JSON 填充 Extjs 组合框。 (Json 是由 java servlet 中的 SQL 查询生成的)。
这是我的 ext-js 代码:
function createComboBox(){
var store = Ext.create('Ext.data.JsonStore', {
autoLoad : true,
url : 'SourceType',
method : 'POST',
fields : ['sourceName'],
proxy : {
type : 'memory',
reader : {
type : 'json',
root : 'data',
}
}
});
store.load();
return store;
}
这是我如何将组合框放入 Ext.form.Panel 的项目中:
var store = createComboBox();
Ext.create('Ext.form.Panel', {
bla bla
items : [
{
xtype : 'combo',
store : 'store',
name : 'combobox',
fieldLabel : 'Select ',
displayField : 'sourceName',
queryMode : 'local'
}
]
)};
你能解释一下为什么这不起作用吗?
最佳答案
您商店的代理的类型定义为“内存”
,如 sencha docs 中所定义。 :
In-memory proxy. This proxy simply uses a local variable for data storage/retrieval,
您可能需要将代理类型设置为 ajax
或 jsonp
并确保指定服务的 URL 正确。
关于java - 使用 JSON 填充 ext-js 组合框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24737229/