nodejs+bootstrap實現分頁效果

來源:互聯網
上載者:User

1、資料處理

首先在動態js中,根據url參數擷取資料庫文檔的數量,設定分頁的大小,擷取當前頁面的資料,然後將文檔數量pagecount,分頁大小pagesize,以及當前頁面currentpage傳遞到頁面中。

2、處理分頁效果

我採用的是javascript動態產生的,你也可以利用ejs支援函數的特性將其封裝後產生html形式的分頁。

首先,添加分頁ul,在你的頁面中需要顯示的位置添加代碼:

<ul class="pagination" id="pagination"></ul>

然後在script標籤中插入處理分頁的代碼:

$(document).ready(function() {if($("#pagination")){var pagecount = <%= locals.pagecount %>;var pagesize = <%= locals.pagesize %>;var currentpage = <%= locals.currentpage %>;var counts,pagehtml="";if(pagecount%pagesize==0){counts = parseInt(pagecount/pagesize);}else{counts = parseInt(pagecount/pagesize)+1;}//只有一頁內容if(pagecount<=pagesize){pagehtml="";}//大於一頁內容if(pagecount>pagesize){if(currentpage>1){pagehtml+= '<li><a href="/course/index/'+(currentpage-1)+'">上一頁</a></li>';}for(var i=0;i<counts;i++){if(i>=(currentpage-3) && i<(currentpage+3)){if(i==currentpage-1){pagehtml+= '<li class="active"><a href="/course/index/'+(i+1)+'">'+(i+1)+'</a></li>';}else{pagehtml+= '<li><a href="/course/index/'+(i+1)+'">'+(i+1)+'</a></li>';}}}if(currentpage<counts){pagehtml+= '<li><a href="/course/index/'+(currentpage+1)+'">下一頁</a></li>';}}$("#pagination").html(pagehtml);}});
注意:locals.pagecount,locals.pagesize,locals.currentpage分別是資料庫數量,分頁大小,當前分頁,他們是從js中傳遞過來的,當然, 你也可以直接修改它們為固定的資料測試下效果

比如:

實際效果為:


這樣一個簡單的分頁效果就出來了

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.