NodeJS和BootStrap分頁效果的實現(xiàn)代碼
1、數(shù)據(jù)處理
首先在動態(tài)js中,根據(jù)url參數(shù)獲取數(shù)據(jù)庫文檔的數(shù)量,設置分頁的大小,獲取當前頁面的數(shù)據(jù),然后將文檔數(shù)量pagecount,分頁大小pagesize,以及當前頁面currentpage傳遞到頁面中。
2、處理分頁效果
我采用的是JavaScript動態(tài)生成的,你也可以利用ejs支持函數(shù)的特性將其封裝后生成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;
}
//只有一頁內(nèi)容
if(pagecount<=pagesize){pagehtml="";}
//大于一頁內(nèi)容
if(pagecount>pagesize){
if(currentpage>1){
pagehtml+= '<li><a rel="external nofollow" 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 rel="external nofollow" href="/course/index/'+(i+1)+'">'+(i+1)+'</a></li>';
}else{
pagehtml+= '<li><a rel="external nofollow" href="/course/index/'+(i+1)+'">'+(i+1)+'</a></li>';
}
}
}
if(currentpage<counts){
pagehtml+= '<li><a rel="external nofollow" href="/course/index/'+(currentpage+1)+'">下一頁</a></li>';
}
}
$("#pagination").html(pagehtml);
}
});
注意:locals.pagecount,locals.pagesize,locals.currentpage分別是數(shù)據(jù)庫數(shù)量,分頁大小,當前分頁,他們是從js中傳遞過來的,當然,你也可以直接修改它們?yōu)楣潭ǖ臄?shù)據(jù)測試下效果。
比如:

實際效果為:

這樣一個簡單的分頁效果就出來了
以上所述是小編給大家介紹的NodeJS和BootStrap分頁效果的實現(xiàn)代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
Node.js中package.json中庫的版本號(~和^)
這篇文章主要介紹了Node.js中package.json中庫的版本號(~和^),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-04-04
如何使用axios庫在Node.js中進行代理請求(實踐案例)
axios是一個強大的基于Promise的HTTP客戶端,它在瀏覽器和Node.js環(huán)境中均可使用,本文將介紹如何充分利用axios庫,在Node.js中進行代理請求的最佳實踐,并通過一個實際案例來展示其應用,感興趣的朋友一起看看吧2024-03-03
electron demo項目npm install安裝失敗的解決方法
下面小編就為大家分享一篇electron demo項目npm install安裝失敗的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-02-02
學習使用grunt來打包JavaScript和CSS程序的教程
這篇文章主要介紹了學習使用grunt來打包JavaScript和CSS程序的教程,grunt基于node.js和需要的朋友可以參考下2016-01-01
Express實現(xiàn)定時發(fā)送郵件的示例代碼
在開發(fā)中我們有時候需要每隔?一段時間發(fā)送一次電子郵件,或者在某個特定的時間進行發(fā)送郵件,無需手動去操作,基于這樣的情況下我們需要用到了定時任務。本文就來用Express實現(xiàn)定時發(fā)送郵件吧2023-04-04

