使用分页extjs在组合框中搜索
您好,我正在尝试在组合框中进行搜索。它正在工作,但只在当前页面中搜索我也在使用搜索分页,我需要在所有页面中搜索,而不仅仅是当前页面 有什么建议吗使用分页extjs在组合框中搜索,extjs,combobox,Extjs,Combobox,您好,我正在尝试在组合框中进行搜索。它正在工作,但只在当前页面中搜索我也在使用搜索分页,我需要在所有页面中搜索,而不仅仅是当前页面 有什么建议吗 您的商店需要设置为 服务器需要根据从存储代理接收的参数正确处理分页。代理将发送查询字符串参数,如?page=1&start=0&limit=25,服务器只需返回25条(例如)记录和一个total参数 {“总计”:101,“数据”:[{model data},{model data},…]} 尽管有文档,combobox中的pageSize属性实际上是
?page=1&start=0&limit=25
,服务器只需返回25条(例如)记录和一个total参数
{“总计”:101,“数据”:[{model data},{model data},…]}
我将combobox与queryMode一起使用:“remote”,并使用combobox搜索匹配项。我正在执行“包含”搜索,这意味着它在结果字符串中的任何位置查找匹配项,而不仅仅是开始,而且它不仅在当前页面中搜索值,而且在整个结果集中搜索值。我使用的是ExtJS4.0.7,通过重写doQuery方法实现了这一点 `doQuery:函数(queryString、forceAll){ 这个。展开(); this.store.clearFilter(!forceAll)
如果您可以发布代码,诊断起来会容易得多。您使用的是远程存储还是本地存储?添加的代码我使用的是远程存储和查询模式。它是本地的
this.store
是如何定义的?在initComponent,例如initComponent:function(){this.store=Ext.create('App.store.CountriesStore');}不,我的意思是你能发布你商店的完整定义吗?
{
xtype: 'combo',
fieldLabel: 'Organization Id',
name: 'company_id',
displayField:'name_en',
valueField:'id',
store: Ext.create('UserApp.store.PicklistList', {
autoLoad: true,
fields: ['id', 'name_en', 'name_se'],
proxy:{
type:'ajax',
api: {
read:'picklist/listitems'
},
reader: {
type: 'json',
root: 'root',
successProperty: 'success'
},
extraParams:{
table :'table_name'
}
}
}),
editable: true,
autoSelect: false,
selectOnFocus:true,
typeAhead:true,
minChars:2,
queryMode: 'local',
mode: 'local',
pageSize: 25,
width:370,
allowOnlyWhitespace: false,
regex: /[a-zA-Z0-9]+/, // avoid to empty data only
})
if(this.queryMode == 'remote') {
this.store.load({
params: this.getParams(queryString)
});
}
if (!forceAll) {
this.store.filter(this.displayField, new RegExp(Ext.String.escapeRegex(queryString), 'i'));
}
}`