jqPaginator结合express实现分页展示内容效果

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

jqPaginator结合express实现分页展示内容效果

靳刘杰   2020-05-15 我要评论

写在前面的话

分页展示内容也是我们在页面开发中经常会遇到的需求
前端页面利用jqPaginator这个jquery插件来编写
后端利用mysql存储数据

开始敲代码

回顾sql知识

首先让我们回顾一下sql语句,我们只想查询出数据表里的某几条用limit实现

select * from 表名 limit [offset,] rows

其中,limit后面可以跟两个参数,也可以跟一个参数。
跟一个参数表示rows,相当于offset=0,从数据表中的第一条记录开始查询出rows条数据。
跟两个参数的话,第一个是从0开始的偏移量,第二个参数表示想查询出来的记录数。

利用jqPaginator这个优秀的jquery分页插件编写一个分页条

注意:这个分页是基于bootstrap3.1.1写出来的

<!DOCTYPE html>
<html>
 <head>
 <link type="text/css" rel="stylesheet" href="http://cdn.staticfile.org/twitter-bootstrap/3.1.1/css/bootstrap.min.css"/>
 </head>
 <body>
 <div style="text-align: center;">
  <ul class="pagination" id="pagination1"></ul>
 </div>
 
 </body>
 <script src="/javascripts/jquery.min.js"></script>
 <script src="/javascripts/jqPaginator.js"></script>
 <script>
 $.jqPaginator('#pagination1', {
  totalPages: 100,
  visiblePages: 3,
  currentPage: 1,
  onPageChange: function (num, type) {
   if (type == 'change') {
     //这里是点击分页的回调
   }
  }
 });
 

 </script>
</html>


这里我们可以方便的把分页按钮写出来

后台代码

router.get('/pages', function (req, res, next) {
  // res.json({"name": 123});
  var page = req.query.page;
  var page = (--page)*5;
  var connection = mysql.createConnection({
    host: '127.0.0.1',
    port: 3306,
    user: 'root',
    password: 'root',
    database: 'vr02'
  });
  connection.connect(function(err) {
    if (err) {
      throw err;
    }
    console.log('连接数据库成功');
  });
  connection.query('select * from user limit ?, 5',,function (err,data,fields) {
    if (err) {
      throw err;
    }
    res.json(data);
    connection.end();
  });
  
});

后台代码连接数据库,并且将部分记录返回给客户端

发送ajax请求获取记录数

  function getDatas(page) {
    $.ajax({
      type: 'get',
      url: '/pages',
      data: 'page='+page,
      dataType: 'json',
      success: function (data) {
        var html = '';
        for (var i = 0; i < data.length; i++) {
          html += '<tr>';
          html += '<td>' + data[i].id + '</td>';
          html += '<td>' + data[i].user + '</td>';
          html += '<td>' + data[i].pass + '</td>';
          html += '</tr>';
        }
        console.log(html);
        $("#content").html(html);
      }
    })
  }


OK!大功告成!

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们