【六袆 - ExtJS】10年前ExtJS项目;解决ExtJS查询无数据时,不刷新Panel或Page页面的BUG
原创
©著作权归作者所有:来自51CTO博客作者wx5cd3964945843的原创作品,请联系作者获取转载授权,否则将追究法律责任
bug code review
onSearch :function (grid, store,) {
var me = this;
store.getProxy().extraParams= {
//封装传给后端的参数,是json格式的
keyword : keyword,
flag : 1
}
store.loadPage(1,{
callback : function() {
grid.resetFocus(false);
if(store.getCount() === 0){
Ext.Msg.alert(sysTitle,'No Data!');
}
excelKeyword = escape(escape(keyword.trim()));
excelType = 1;
}
});
}
bug code update
onSearch: function (grid, store,) {
var me = this;
store.getProxy().extraParams= {
keyword : keyword,
flag : 1
};
store.currentPage = 1;
me.getPage().el.mask('Inquiring......');
store.load({
callback:function (records, o,) {
me.getPage().el.unmask();
if (records.length == 0) {
//解决的关键这行代码,必须先移除之前的记录
me.getEpidemicapplyView().getStore().removeAll();
Ext.Msg.alert(sysTitle, 'No Data!');
}else {
// 加载完成数据后,让grid过的焦点,聚焦第一条数据
grid.resetFocus(false);
}
}
});
},
辅助
me.getEpidemicapplyView().getStore().removeAll();
这里必须是引入view页面的ref 后面的值
比如ref : ‘epidemicapplyView’,如果要得到,就这样获取me.getEpidemicapplyView()