我使用 Ext.form.combobox 执行自动完成搜索,我的数据存储在数组存储中:ext.data.arraystore,实际上数组存储中的数据是通过 ajax 请求加载的,这是我的数组存储代码:
var ds = new Ext.data.ArrayStore({
fields: ['description','lat','lng'],
data: xmlarray
});
其中 xmlarray 是使用 ajax 请求从 php 服务器加载的数据数组
这是我的组合框代码:
var timePanel = {
xtype: 'panel',
border: false,
width: 600,
bodyPadding: 10,
layout: 'anchor',
items: [{
xtype:'combo' ,
displayField:'displayValue',
valueField: 'id',
store: ds,
mode: 'local',
typeAhead: true,
triggerAction: 'all',
hideTrigger:false,
lazyRender: true,
emptyText: 'select a city',
forceSelection: false,
typeAhead: true,
selectOnFocus: true,
enableKeyEvents:true,
listConfig: {
loadingText: 'Searching...',
emptyText: 'No matching posts found.',
// Custom rendering template for each item
getInnerTpl: function() {
return '<div class="search-item">' +
'<h3><span>{[Ext.Date.format(values.lastPost, "M j, Y")]}<br />by {author}</span>{title}</h3>' +
'{excerpt}' +
'</div>';
}
},
pageSize: 10,
//listeners: {select: this.GeocoderRequest};
}
]
};
我的主要问题是组合框向我显示了一组空的选择行,而每个选择行都应该显示我的数据中的一个名称,但它是空的。我的 arrastore 或组合框配置有什么问题吗?