填写查询条件并完成搜索后,当页的数据是正确,但是点击翻页后,数据结果有误,这个原因是由于翻页查询条件并没有传入。
解决方法如下:
给Store添加一个事件----beforeload
在一个新数据对象请求发出前触发此事件. 如果beforeload的处理函数返回‘false‘, 数据请求将被取消.
具体代码如下:
ds_edisCommonUser.on(‘beforeload‘,function(ds_edisCommonUser,options){ var _search_name= Ext.getCmp(‘search_byName‘).value; var new_params = { name:_search_name }; Ext.apply(ds_edisCommonUser.proxy.extraParams,new_params); })
不过过程中会遇到一个小问题,即如果当前页已经是第二页了,再进行条件查询后,查询后的数据直接显示第二页
解决方式:store.loadPage(1),强制将页改至第一页。
handler:function(){ var search_name = Ext.getCmp(‘search_byName‘).value; ds_edisCommonUser.load({ params:{ name:search_name } }); ds_edisCommonUser.loadPage(1); }
时间: 2024-10-05 11:35:18