原因分析:點擊刷新按鈕是對當前頁數據進行reload,因此所傳的請求參數皆為上一次加載當前頁的參數即datagrid的load方法中的參數,主要是因為請求的最終時間無法更新到最新狀態
解決方案:對點擊刷新按鈕的onBeforeRefresh事件進行監聽,在此事件中調用datagrid的roload方法並重置請求參數,最后返回false取消下一步操作,具體操作如下:
1 //獲取分頁對象 2 var pg = $("#dg").datagrid("getPager"); 3 if(pg) 4 { 5 //監聽分頁事件 6 $(pg).pagination({ 7 onBeforeRefresh:function(){ 8 $("#enddate").datetimebox('setValue',formatDate(new Date())); 9 if(!checkDate()) 10 { 11 return; 12 } 13 $("#dg").datagrid('reload', 14 { 15 //重置請求參數 16 orgId:$('#oid').val(), 17 beginDate:beginStr, 18 endDate:endStr, 19 containSub:$('#containSub').is(':checked') 20 }); 21 //返回false取消刷新動作 22 return false; 23 } 24 }); 25 }
