###實現了以下圖的分頁效果
###思路:生成哪些頁碼,例如1-6頁,2-7頁,是由後臺控制生成的。 ###假設咱們決定生成的分頁條,上面有 9 個超連接供點擊。 ###而且咱們的分頁信息包含總頁數,當前爲第幾頁等信息,那麼咱們能夠計算生成分頁條頁面。javascript
/** * 頁面上的分頁條數據 * @param tatal 分頁條一共生成幾條頁碼數據供點擊 * @param pages 一共多少頁數據 * @param pageNum 當前頁是第幾頁 */ private List<String> pagesBar(int total, int pages, int pageNum) { List<String> list = new ArrayList<String>(); // 分頁條第一個連接從幾開始 int start = pageNum - total / 2; if (start <= 1) { start = 1; } // 分頁條最後一個連接以幾開始,注意此處減1,不然生成分頁條數據個數大於total int end = start + total - 1; // 處理一些特殊狀況,如分頁條數據開頭或者末尾處,保證必定會生成 total 條分頁條數據超連接 if (end > pages) { end = pages; start = end - total + 1; if (start <= 1) { start = 1; } } // start end 迭代,一共有 total 條數據 while (end >= start) { list.add(String.valueOf(start)); start++; } return list; }
###頁面展示java
<c:forEach items="${pagesBar }" var="page" > <a class="page" href="javascript:turnPage('${page}');">${page}</a> </c:forEach>