您好,登錄后才能下訂單哦!
首先下載kkpager插件:https://github.com/pgkk/kkpager
1、將下載下來的js和css拷貝到項目中,在需要分頁的頁面引入kkpager插件所需的js和css,如下:
<script type="text/javascript" src="js/kkpager.js"></script> <script type="text/javascript" src="js/jquery-1.8.3.js"></script> <link rel="stylesheet" type="text/css" href="css/kkpager_orange.css">
其中css有兩個,一個是橘色的,一個是藍色的,選擇喜歡的顏色任意引入一個就可以。
2、在需要分頁的頁面添加div:
<div id="kkpager"></div>
3、因為使用時這個插件初始化頁面時代碼挺多,所以我就新建了一個js文件,并在其中封裝了一個初始化的方法。
新建common.js(記得將這個js引入到要分頁的頁面哦),定義方法initPage;
/** * 生成分頁控件 nowPage:當(dāng)前頁 totalPage:總頁數(shù) totalRows:總記錄條數(shù) rows:每頁顯示多少條 fun:要調(diào)用的函數(shù) 一般寫填充表格數(shù)據(jù)的邏輯 */ function initPage(nowPage,totalPage,totalRows,rows,fun){ //生成分頁控件 kkpager.generPageHtml({ pno : nowPage, mode : 'click', //設(shè)置為click模式 //總頁碼 total : totalPage, //總數(shù)據(jù)條數(shù) totalRecords : totalRows, //點擊頁碼、頁碼輸入框跳轉(zhuǎn)、以及首頁、下一頁等按鈕都會調(diào)用click //適用于不刷新頁面,比如ajax click : function(n){ //這里可以做自已的處理 //... //點擊要調(diào)用的函數(shù) 參數(shù)1 當(dāng)前頁數(shù) 參數(shù)2 每頁顯示的條數(shù) fun(n,rows); //處理完后可以手動條用selectPage進行頁碼選中切換 this.selectPage(n); }, //getHref是在click模式下鏈接算法,一般不需要配置,默認代碼如下 getHref : function(n){ return '#'; } }); }
這樣基本就搞定了。
4、在需要分頁的的頁面使用,其實現(xiàn)在只要直接調(diào)用comom.js中定義好的方法即可。
<script type="text/javascript"> //自定義方法,獲取數(shù)據(jù)并加載 /* nowPage:當(dāng)前頁 rows:每頁顯示的數(shù)據(jù)條數(shù) */ function loadInfor(nowPage,rows){ //TODO(例:發(fā)送ajax請求,從后臺獲取數(shù)據(jù),構(gòu)建動態(tài)表格之類的……) //其中的10 和100 可以是從后臺獲取的真實數(shù)據(jù) //loadInfor是當(dāng)前這個函數(shù),作為參數(shù)傳入是為了initPage中的click點擊事件 initPage(nowPage,10,100,rows,loadInfor); } $(function(){ //kkpager.pno :插件提供的方法,獲取當(dāng)前頁碼 loadInfor(kkpager.pno,10); }); </script> </head> <body> <div id="kkpager"></div> </body>
頁面效果:
如果有真實的數(shù)據(jù),效果就更鮮明了,完畢!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
額外的:PageUtil.java,后臺封裝頁面所需的分頁數(shù)據(jù),一并奉上!
public class PageUtil implements java.io.Serializable{ /** * serialVersionUID */ private static final long serialVersionUID = 1L; // 當(dāng)前頁 private Integer page; // 每頁多少條 private Integer rows; // 總頁數(shù) private Integer totalPage; // 總記錄條數(shù) private Integer totalRows; public Integer getPage() { return page; } public void setPage(Integer page) { this.page = page; } public Integer getRows() { if(rows==null){ rows=10; } return rows; } public void setRows(Integer rows) { this.rows = rows; } public Integer getTotalPage() { if(totalRows==null){ totalRows=0; } if (totalRows % getRows() == 0) { totalPage = totalRows / getRows(); } else { totalPage = totalRows / getRows() + 1; } return totalPage; } public void setTotalPage(Integer totalPage) { this.totalPage = totalPage; } public Integer getTotalRows() { return totalRows; } public void setTotalRows(Integer totalRows) { this.totalRows = totalRows; } public PageUtil(Integer page, Integer rows, Integer totalPage, Integer totalRows) { super(); this.page = page; this.rows = rows; this.totalPage = totalPage; this.totalRows = totalRows; } public PageUtil() { super(); } @Override public String toString() { return "PageUtil [page=" + page + ", rows=" + rows + "]"; } }
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。