我有一个xtype:'combo',如下所示:
xtype: 'combo',
id: 'records_list_author_id',
emptyText: 'Filter By author',
editable: false,
store: 'FilterRecordsByAuthor',
displayField: 'firstname',
valueField: 'id',
lastQuery: '',
triggerAction: 'all',
queryMode: 'local',//'remote',
typeAhead: false,
width: 200
我使用非常简单的故事,代理定义如下:
proxy: {
type: 'ajax',
actionMethods: 'POST',
api: {
read: g_settings.baseUrl + 'index.php/record/getAuthorsOfRecords'
},
reader: {
type: 'json',
root: 'data',
idProperty: 'id',
successProperty: 'success'
//totalProperty: 'totalCount'
}
}
在我的控制器中我有这个:
var comboBoxFilterByAuthorSt = this.getFilterRecordsByAuthorStore();
comboBoxFilterByAuthorSt.clearFilter(true);
comboBoxFilterByAuthorSt.filter ({
filterFn: function(item) {
return item.get('category_id') == sel.raw.categoryId;
}
})
因此,例如当我有sel.raw.categoryId = 1
时,它会在我的商店中匹配2个不同作者的记录,但在组合框中我只得到其中一个名称。在其他情况下,我也得到不正确的结果。我检查了我的SQL查询,它工作正常,并返回正确的信息,但当我过滤商店我没有得到匹配,我知道他们存在。也许问题出在其他地方,但也许我在制作滤镜时会遗漏一些东西。所以 - 任何建议都表示赞赏。
由于
Leron