Ext GridPanel在进行条件查询后,翻页有误

填写查询条件并完成搜索后,当页的数据是正确,但是点击翻页后,数据结果有误,这个原因是由于翻页查询条件并没有传入。

解决方法如下:

给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);
            }

 

posted @ 2016-10-12 23:18  Gould-Zhang  阅读(694)  评论(0编辑  收藏  举报