我正在使用 ExtJS 3.4,我需要使用以下数据填充组合框:
"[{"cod_domini":"1","nom_domini":"Sant Esteve de Palautordera"},{"cod_domini":"2","nom_domini":"Parc Natural del Montseny"},{"cod_domini":"5","nom_domini":"Sant Pere de Vilamajor"},{"cod_domini":"6","nom_domini":"Santa Maria i Mosqueroles"}]"
它来自以前的 XMLHttpRequest,我将它存储在一个变量中,因此:
my_variable = "[{"cod_domini":"1","nom_domini":"Sant Esteve de Palautordera"},{"cod_domini":"2","nom_domini":"Parc Natural del Montseny"},{"cod_domini":"5","nom_domini":"Sant Pere de Vilamajor"},{"cod_domini":"6","nom_domini":"Santa Maria i Mosqueroles"}]"
所以,我有以下 ExtJS 3.4 组合框:
cbxSelDomini = new Ext.form.ComboBox({
hiddenName: 'Domini',
name: 'nom_domini',
displayField: 'nom_domini',
valueField: 'cod_domini',
mode: 'local',
triggerAction: 'all',
listClass: 'comboalign',
typeAhead: true,
forceSelection: true,
selectOnFocus: true,
store: mystore
});
这个组合框应该从我命名为“mystore”的 Ext.data.Store 中获取数据:
store: mystore = new Ext.data.Store({
autoload: true,
reader: new Ext.data.ArrayReader(
{
idIndex: 0 // id for each record will be the first element
}),
data: dataprova,
fields: [
{type: 'integer', name: 'cod_domini'},
{type: 'string', name: 'nom_domini'}
]
}),
我的第一个问题是,在第一个实例中,数据没有加载到 dataStore,甚至明确地告诉:mystore.loadData(my_variable);
有人可以告诉我我做错了什么吗?在 fireBug 中,我收到诸如“this.data 未定义”、“this.reader 未定义”或“b 未定义”和“h 未定义”之类的错误。
当我将数据格式更改为 javascript 数组时,也会出现同样的错误,例如:
var dataexample = [[1, 'Sant Esteve de Palautordera'], [2, 'Parc Natural del Montseny']];
并在存储“数据”属性上调用 dataexample。
我完全迷路了...