JqGrid分頁表格資料匯出excel而兩種方式
阿新 • • 發佈:2019-01-13
首先要確定一個問題:
你的資料返回的方式是一次性載入完
還是點選下一頁重新請求伺服器
?
根據你上邊資料返回的方式,我們分類來處理。
第一種:點選下一頁重新請求伺服器
這種的話,每次點選下一頁是需要重新請求伺服器的,所以我們只需傳送請求,然後後臺從資料庫select資料得到list,將list傳給生成EXCEL的函式(一般都是用POI)。
比如:當用戶搜尋性別為女的學生時,
前端給後端傳送post請求(帶引數的)
後端響應第一頁的資料。
而我們點選匯出的時候,我們需要獲取搜尋
操作的請求內容,發給後端。
經過我的不懈努力,我在$("#grid")
具體位置是在$("#grid")[0].p.postData
。
那麼我只需要獲取這個物件,然後當用戶點選匯出按鈕之後,帶上postData
的引數,傳送匯出檔案的請求,然後後端根據引數查詢出所有符合條件的student物件,組合成一個list,然後生成excel檔案流,供使用者下載。
**PS:**關於後端傳檔案流,前端如何儲存為檔案下載下來。這個我在第二種方式裡邊介紹過通過檔案流非同步實現下載檔案,有興趣的可以去看看。
第二種:一次性載入完
這一種,我在上一篇部落格中已經介紹過這個方法,所以直接上連線。
傳送門:戳我