この記事では、ページング効果表示を実現するためのnode+expressの具体的なコードを参考までに共有します。具体的な内容は次のとおりです。 効果は以下のとおりです 1. インデックス index.js内 //フロントエンドへのデータリスト送信 + ページング実装 router.get('/admin', function(req, res, next) { var カウント = 0; var ページ = 0; var サイズ = 5; //ページ番号 var pagenum = req.query.pagenum; var ページ番号 = ページ番号?ページ番号:1; mongo.connect(url1,function(err,database){ database.collection("list",function(err,coll){ //非同期処理 async.series([ 関数(コールバック){ coll.find({}).toArray(function(err,data){ count = data.length; //データ項目の数 //page = page<1? 1:page; page = Math.ceil(count/size); //ページの総数 pagenum = pagenum<1?1:pagenum; //ページ番号が1未満なので1を表示 pagenum = pagenum>page?page:pagenum; //ページ番号が総ページ数より大きいため、総ページ数を表示します callback(null,'') }) },関数(コールバック){ coll.find().sort({_id:-1}).limit(size).skip((pagenum-1)*size).toArray(function(err,data){ コールバック(null,データ) }) } ],関数(エラー,データ){ res.render('admin',{list:data[1],page:page,count:count,pagenum:pagenum,size:size,name:req.session.name}) データベースを閉じる() }) // coll.find({}).toArray(function(err,data){ // res.render('admin', {list:data}); //フロントエンドの管理ページは直接リストとして使用できます // データベースを閉じる() // }) }) }) }); 2. レンダリングされたページ <!-- データベースから取得したデータの表示 --> <tbody id="tbody"> <% list.map(function(item,i){ %> <tr> <td><%- i+1 %></td> <td><%- アイテム名 %></td> <td><%- item.nicheng %></td> <td><%- アイテム.time %></td> <td><%- アイテム.pass %></td> <td class="text-center"> <div class="layui-btn-group"> <button class="btn btn-primary btn-xs change" data-toggle="modal" data-target="#myModal2" dw-url="create.html?id=1" dw-title="ユーザーの編集"> <i class="layui-icon"></i>編集</button> <button class="btn btn-danger btn-xs dw-delete delate" > <i class="layui-icon"></i>削除</button> </div> </td> </tr> <tr> <% }) %> </tbody> <!-- ページング処理 --> <div class="am-cf"> <li class="am-active" style="margin-top: 20px"> <span style="font-size:20px">ページ<%-pagenum%></span> </li> <div aria-label="ページナビゲーション" style="margin-left:600px"> <ul class="ページネーション"> <li class="am-disabled"> <a href="/admin?pagenum=<%-pagenum<1?1:parseInt(pagenum)-1 %>" >«</a> </li> <% if(ページ>5){%> <li class="am-active"> <a href="/admin?pagenum=1">1</a> </li> <li class="am-active"> <a href="/admin?pagenum=2">2</a> </li> <li class="am-active"> <a href="#" >...</a> </li> <li class="am-active"> <a href="/admin?pagenum=<%-page-1 %>"><%-page-1 %></a> </li> <li class="am-active"> <a href="/admin?pagenum=<%-page %>"><%-page %></a> </li> <% }その他{%> <% for(let i = 0;i<page;i++){ %> <li class="am-active"> <a href="/admin?pagenum=<%-i+1 %>"><%-i+1 %></a> </li> <% } %> <% } %> <li> <a href="/admin?pagenum=<%-pagenum>ページ?page:parseInt(pagenum)+1%>" >»</a> </li> </ul> </div> </div>> 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Alibaba Cloud ECS クラウド サーバー (Linux システム) は、MySQL をインストールした後にリモートで接続できません (落とし穴)
>>: MySQL Server 8.0.13.0 インストールチュートリアル(画像とテキスト付き)
<br />一般的に、「標準的な Web ページ」のファイル構成は XHTML CSS ...
目次ユニオンクエリ1. 中国の各省のIDと名前を照会する2. 湖南省のすべての地級市のIDと名称3....
この記事では、主に Linux で MYSQL データベースをインストールする方法について説明し、M...
<br />構造と階層により複雑さが軽減され、読みやすさが向上します。記事やサイトが整理...
序文JavaScript は、キーワードを使用してプライベート変数を宣言できる他の言語とは異なります...
この例で使用されているMySQLのバージョンはmysql-8.0.15-winx64です。 1. z...
1. 要素時間選択提出フォーマット変換例えば 2018年9月7日金曜日 00:00:00 GMT+0...
1. mysqldump コマンドを使用してデータベースをエクスポートします (このコマンドのパスで...
序文最初はCentOS8でwgetを使ってダウンロードし、解凍して環境変数を設定するつもりだったので...
まず、テーブルを分割する必要がある理由について説明します。データシートが数百万に達すると、1 回のク...
目次序文需要分析MySQL ユーザー変数累積計算にMysqlユーザー変数を使用する要約するこの記事で...
MySQL 5.7.18 が正常にインストールされた後、バージョン 5.7 では空のパスワードでのロ...
FTP は主にファイル転送に使用され、Linux では vsftpd で実装されるのが一般的です。F...
CSS デフォルトスタイルをクリア通常の明確なデフォルト スタイル: *{ マージン:0; パディン...
目次序文1. 不明 vs 任意2. 未知とあらゆるもののメンタルモデル3. まとめ要約する序文any...