bootstrap-paginator服务器端分页使用方法详解


Posted in Javascript onFebruary 13, 2020

本文实例为大家分享了bootstrap-paginator服务器端分页的基本用法,供大家参考,具体内容如下

HTML:

<script src="../js/jquery-3.2.1.min.js"></script>
<script src="../js/bootstrap.min.js"></script>
<script src="../js/bootstrap-paginator.min.js"></script>

 <!-- 主内容列表 -->
 <ol class="list-group" id="infoList>
  <li class="list-group-item"><span class="fa fa-cog fa-spin fa-fw"></span>正在读取数据……</li>
</ol>

<!-- 分页导航器 -->
<div style="text-align:center;">
  <ul id="useroption" class="pagination"></ul>
</div>

JS:

//读取消息列表*************************************************//
 queryInfoList(paraValue);
 function queryInfoList(bid)
 {
  $.ajax({
   async: true,
   type: "get",
   url: "../php/list.php",//向后端发送请求,后端为PHP
   dataType: "json", //要求后端返回数据为JSON格式
   data: { page: '1',bid:bid,act:'getInfoList' }, //请求参数,首次请求页码为1
   cache: false,
   success: function (data)
   {
    
    lis = "";
    for (eachRs in data.rs)
    {//拼接对应<li>需要的值
     lis += "<li class='list-group-item'><a title='"+data.rs[eachRs]['title']+"' class='newsLink' href='read.html?id="+data.rs[eachRs]['id']+"'>" + data.rs[eachRs]['title'] + "</a> <span class='text-muted pull-right'>"+data.rs[eachRs]['posttime']+"</span></li>";
    };
    $("#infoList").html(lis);

    var currentPage = data.CurrentPage; //当前页数
    var pageCount = data.pageCount; //总页数
  
    var options = {
     bootstrapMajorVersion: 4, //版本
     currentPage: currentPage, //当前页数
     totalPages: pageCount, //总页数
     numberOfPages: 10,//分页器显示10条
     shouldShowPage: true,//是否显示该按钮
     itemTexts: function (type, page, current)
     {
      switch (type)
      {
       case "first":
        return "首页";
       case "prev":
        return "上页";
       case "next":
        return "下页";
       case "last":
        return "末页";
       case "page":
        return page;
      }
     },
     
     //点击事件,用于通过Ajax来刷新整个list列表
     onPageClicked: function (event, originalEvent, type, page)
     {
      $.ajax({
       async: true,
       url: "../php/list.php",
       type: "get",
       dataType: "json",
       data: { page: page,bid:bid ,act:'getInfoList'},
       cache: false,
       success: function (data)
       {
        lis = "";
        for (eachRs in data.rs)
        {//拼接对应<li>需要的值
         lis += "<li class='list-group-item'><a title='"+data.rs[eachRs]['title']+"' class='newsLink' href='read.html?id="+data.rs[eachRs]['id']+"'>" + data.rs[eachRs]['title'] + "</a> <span class='text-muted pull-right'>"+data.rs[eachRs]['posttime']+"</span></li>";
        };
        $("#infoList").html(lis);
       }/*success*/
      });
     }
    };
    $('#useroption').bootstrapPaginator(options);
   }/*success*/
  });
 }

PHP:

if($act=='getInfoList')
{
 $bid=addslashes($_REQUEST['bid']);
 $curPage=addslashes($_REQUEST['page']);//当前页码
 $pageSize=15; //每页条数
 $rsAll=$dbh->query("select count(id) from article where board=$bid and wid=30 and auditor is not null and accessable=1")->fetchAll();
 $rsAllCount=$rsAll[0][0];//总记录数

 //计算总页数
 if($rsAllCount%$pageSize==0)
  $pageAllCount=$rsAllCount/$pageSize;
 else
  $pageAllCount=intval($rsAllCount/$pageSize)+1;

 $beginRs=($curPage-1)*$pageSize; //计算起始记录
 $curRsSql="select id,title, posttime from article where board=$bid and wid=30 and auditor is not null and accessable=1 order by posttime desc limit $beginRs,$pageSize";
 $rsCur=$dbh->query($curRsSql)->fetchAll();
 echo(json_encode(array("rs"=>$rsCur,"pageCount"=>$pageAllCount,"curPage"=>$curPage,"sql"=>$curRsSql)));
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery的三种$()
Dec 30 Javascript
coffeescript使用的方式汇总
Aug 05 Javascript
跟我学习javascript的闭包
Nov 16 Javascript
Vue.js报错Failed to resolve filter问题的解决方法
May 25 Javascript
jQuery基于toggle实现click触发DIV的显示与隐藏问题分析
Jun 12 Javascript
探究Vue.js 2.0新增的虚拟DOM
Oct 20 Javascript
Bootstrap文件上传组件之bootstrap fileinput
Nov 25 Javascript
Vue 中的compile操作方法
Feb 26 Javascript
Javascript Promise用法详解
May 10 Javascript
vue路由事件beforeRouteLeave及组件内定时器的清除方法
Sep 29 Javascript
JS回调函数原理与用法详解【附PHP回调函数】
Jul 20 Javascript
Vue如何清空对象
Mar 03 Vue.js
JavaScript实现Tab选项卡切换
Feb 13 #Javascript
Angular 多模块项目构建过程
Feb 13 #Javascript
小程序卡片切换效果组件wxCardSwiper的实现
Feb 13 #Javascript
JavaScript实现省市区三级联动
Feb 13 #Javascript
jquery传参及获取方式(两种方式)
Feb 13 #jQuery
JS实现页面数据懒加载
Feb 13 #Javascript
node.js中fs文件系统模块的使用方法实例详解
Feb 13 #Javascript
You might like
详解WordPress中过滤链接与过滤SQL语句的方法
2015/12/18 PHP
PHP实现图片批量打包下载功能
2017/03/01 PHP
弹出模态框modal的实现方法及实例
2017/09/19 PHP
PHP微信企业号开发之回调模式开启与用法示例
2017/11/25 PHP
JQUERY操作JSON实例代码
2010/02/09 Javascript
EasySlider 基于jQuery功能强大简单易用的滑动门插件
2010/06/11 Javascript
jQuery简单实现禁用右键菜单
2015/03/10 Javascript
jQuery操作表单常用控件方法小结
2015/03/23 Javascript
在线所见即所得HTML编辑器的实现原理浅析
2015/04/25 Javascript
js 弹出对话框(遮罩)透明,可拖动的简单实例
2016/07/11 Javascript
走进javascript——不起眼的基础,值和分号
2017/02/24 Javascript
详解如何使用webpack+es6开发angular1.x
2017/08/16 Javascript
浅谈Vue.nextTick 的实现方法
2017/10/25 Javascript
vue中使用refs定位dom出现undefined的解决方法
2017/12/21 Javascript
js删除数组中的元素delete和splice的区别详解
2018/02/03 Javascript
Vue.js 事件修饰符的使用教程
2018/11/01 Javascript
如何使用pm2快速将项目部署到远程服务器
2019/03/12 Javascript
vue表单验证你真的会了吗?vue表单验证(form)validate
2019/04/07 Javascript
vue实现按需加载组件及异步组件功能
2019/05/27 Javascript
websocket4.0+typescript 实现热更新的方法
2019/08/14 Javascript
原生js实现拖拽移动与缩放效果
2020/08/24 Javascript
用实例分析Python中method的参数传递过程
2015/04/02 Python
python计算auc指标实例
2017/07/13 Python
Python实现带参数与不带参数的多重继承示例
2018/01/30 Python
Python3.4实现远程控制电脑开关机
2018/02/22 Python
Python字典推导式将cookie字符串转化为字典解析
2019/08/10 Python
Python Web框架之Django框架文件上传功能详解
2019/08/16 Python
钉钉企业内部H5微应用开发详解
2020/05/12 HTML / CSS
英国最大的网上药品商店:Chemist Direct
2017/12/16 全球购物
英国和爱尔兰的自炊式豪华度假小屋:Rural Retreats
2018/06/08 全球购物
银行青年文明号事迹材料
2014/05/31 职场文书
仓库管理员岗位职责
2015/02/03 职场文书
2015入党个人自传范文
2015/06/26 职场文书
MySQL千万级数据表的优化实战记录
2021/08/04 MySQL
MySQL去除重叠时间求时间差和的实现
2021/08/23 MySQL
Python学习之包与模块详解
2022/03/19 Python