usePager: true//開啓分頁 否則grid底部的上一頁下一頁相似這樣的按鈕都沒有
當usePager設置爲true時,單擊分頁條上的按鈕後所提交的請求中會默認多添加2個參數:page和pagesize,這倆參數不用手動本身添加,做爲使用者,咱們只要在服務器端接受這倆參數就能夠了。 java
參數page:想獲得第幾頁;
參數pagesize:每頁顯示多少條記錄; json
也就是說在頁面設置usePager:true 後,下面的工做就在服務器端進行了。 服務器
服務端拿到page和pagesize參數後,經過參數查詢獲得返回的結果後,還要手動查詢總記錄數; app
由於我用AJAX的方式來實現填充Grid,而且這個grid接受的是JSON數據,這個json數據還有格式要求: ui
請參考個人服務端代碼(只供參考): spa
@RequestMapping("/chance/list") public @ResponseBody String proccessList(Model model,String page,String pagesize) { log.info("分頁信息:"+page+","+pagesize); if(null==page){page="1";} if(null==pagesize){pagesize="5";} List<Chance> list = chanceBiz.list(Integer.valueOf(page),Integer.valueOf(pagesize)); ObjectMapper map = new ObjectMapper(); //這個對象是jackson庫裏的 String rst = ""; try { rst = map.writeValueAsString(list);//轉換爲JSON } catch (JsonProcessingException e) { log.error(">>-----把List轉換成JSON格式出錯!------<<"); e.printStackTrace(); } log.info(rst); int totalCount=chanceBiz.getTotalCount();//全部記錄數 StringBuilder sb = new StringBuilder(); //修正格式符合grid要求的json格式 sb.append("{\"Rows\":"); sb.append(rst); sb.append(",\"Total\":"); sb.append(totalCount+"}");//追加全部記錄數到json rst = sb.toString(); return rst; }由於我使用的Spring MVC,對於 客戶端傳來的參數,在服務端在處理請求的方法的參數裏聲明同名的參數便可得到。
grid要求的json格式以下: code
{ xml
"Rows":[{"id":1,"name":"test1"},{"id":2,"name":"test2"}], 對象
"total":13 get
}
"Rows" R 不能小寫哦。。
jackson下載地址:http://wiki.fasterxml.com/JacksonDownload