在實現表格列表時,刪除最後一頁形成最後一頁無數據問題;bootstrap
主要是頁碼超出範圍請求數據爲空bash
經過修改bootstrap-table.js的initServer方法中的查詢success回調函數解決,將該回調函數改成:函數
function (res) {
res = calculateObjectValue(that.options, that.options.responseHandler, [res], res);
/**處理頁碼錯誤問題開始 爲避免有不分頁的數據判斷total*/
if(res.total!=undefined&&res.total!=0&&res.data.length==0){//總記錄數大於0,但當前頁記錄數爲0,則此時頁碼超過了最大頁碼誤
that.options.pageNo = Math.ceil(res.total/that.options.pageSize);//最後一頁(總頁數)
that.initServer();
return;
}
/**處理頁碼錯誤問題結束*/
that.load(res);
that.trigger('load-success', res);
}
複製代碼
即當總記錄數不爲0而當前頁的記錄數爲0時將頁碼設爲最後一頁從新請求數據:ui
if(res.total!=undefined&&res.total!=0&&res.data.length==0){//總記錄數大於0,但當前頁記錄數爲0,則此時頁碼超過了最大頁碼誤
that.options.pageNo = Math.ceil(res.total/that.options.pageSize);//最後一頁(總頁數)
that.initServer();
return;
}
複製代碼
在onLoadSuccess中判斷這裏個人入參是pageNo和pageSize
if(datas.total!=undefined&&datas.total!=0&&datas.rows.length==0){//總記錄數大於0,但當前頁記錄數爲0,則此時頁碼超過了最大頁碼誤
that.pageNo = Math.ceil(datas.total/that.pageSize);//最後一頁(總頁數)
$(this).datagrid("reload");
return;
}
複製代碼