twbs-pagination分页插件的简单应用

1、介绍
jQuery Pagination Plugin for Bootstrap 这个 jQuery 插件简化了 Bootstrap 分页功能的使用。它使用适当的类:.pagination, .active 和 .disabled。下载地址

最简单的demo :

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="/static/assets/vendors/bootstrap/css/bootstrap.css">

</head>
<body>
    <ul id="pagination-demo" class="pagination-sm"></ul>
    <script src="/static/assets/vendors/jquery/jquery.js"></script>
    <script src="/static/assets/vendors/twbs-pagination/jquery.twbsPagination.js"></script>
    <script>
        $('#pagination-demo').twbsPagination({
        totalPages: 35,
        visiblePages: 7,
        onPageClick: function (event, page) {
            $('#page-content').text('Page ' + page);
        }
    });
    </script>
</body>
</html>

显示效果

在这里插入图片描述

2、借助AJAX请求时使用

界面上:

<ul class="pagination pagination-sm pull-right"> </ul>

引入:

<script src="/static/assets/vendors/jquery/jquery.js"></script>
<script src="/static/assets/vendors/bootstrap/js/bootstrap.js"></script>
<!--插件引入-->
<script src="/static/assets/vendors/twbs-pagination/jquery.twbsPagination.js">

调用:

//发送AJAX请求 获取列表所需数据
function loadPageData(page){
   $.getJSON('/admin/api/comments.php',{page:page},function(data){
     $('.pagination').twbsPagination({
       first:'&laquo',//第一页
       last:'&raquo',//最后一页
       prev:'&lt',//上一页
       next:'&gt',//下一页
       totalPages:data.total_pages,//总页数
       visiblePages:5,//每页显示条数
        //去除第一次初始化时就被触发一次
       initiateStartPageClick:false,
       onPageClick:function(e,page){
         loadPageData(page)
       }
     })
     //data=> {total_pages:7,comments:[]}
     var html=$('#comments_tmpl').render({comments:data.comments})
     $('tbody').html(html)
   })
 }
//获取第一页数据
loadPageData(1)

效果图:

在这里插入图片描述

3、如果需要支持动态数据变化时,需要调用destroy方法

简单demo

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="/static/assets/vendors/bootstrap/css/bootstrap.css">

</head>
<body>
    <ul id="pagination-demo" class="pagination-sm"></ul>
    <script src="/static/assets/vendors/jquery/jquery.js"></script>
    <script src="/static/assets/vendors/twbs-pagination/jquery.twbsPagination.js"></script>
    <script>
        var $pagination= $('#pagination-demo')
        function pagination(totalPages){
            //先销毁之前的调用
            $pagination.twbsPagination('destroy')
            $pagination.twbsPagination({
                totalPages: totalPages,
                visiblePages: 7,
                onPageClick: function (event, page) {
                    $('#page-content').text('Page ' + page);
                }
            });                    
        }
       	//可以开始调用pagination(totalPages)方法了
       //pagination(30)
    </script>
</body>
</html>

需要ajax请求的demo

 	//初始化当前页码
    var currentPage=1

    function loadPageData(page){
      $('tbody').fadeOut()
      $.getJSON('/admin/api/comments.php',{page: page},function(data){
        if(page>data.total_pages){
          loadPageData(data.total_pages)
          return
        }
        $('.pagination').twbsPagination('destroy')
        $('.pagination').twbsPagination({
          first:'&laquo',//第一页
          last:'&raquo',//最后一页
          prev:'&lt',
          next:'&gt',
          //开始页码,防止初始化之后,页码跳回第一页
          startPage: page,
          totalPages: data.total_pages,
          visiblePages:5,
          initiateStartPageClick:false,
          onPageClick:function(e,page){
            loadPageData(page)
          }
        })
        //渲染数据
        var html=$('#comments_tmpl').render({comments:data.comments})
        $('tbody').html(html).fadeIn()

        //每次加载完数据后,记录当前页码
        currentPage=page
      })
    }
	//可以开始调用loadPageData(currentPage)了
    loadPageData(currentPage)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值