koa使用jqPaginator(搭配ajax)

有关jqPaginator的相关资料查阅 http://jqpaginator.keenwon.com/

使用:1.首先引入jQuery和jqPaginator,注意路径

            <script src="{{__HOST__}}/assets/js/jqPaginator.js"></script>

2.在页面中加入:

<div id="paginate">
        <div id="page" class="pagination"></div>
        <div class="hr hr32 hr-dotted"></div>
</div>

一般的使用方式:

$('#id').jqPaginator({
    totalPages: 100,  //总页数
    visiblePages: 10,  //每页显示的数量
    currentPage: 1,  //当前页
    onPageChange: function (num, type) {
        $('#text').html('当前第' + num + '页');
    }
});

由于我需要搭配项目,页面第一次使用后台渲染,然后在再用ajax请求,所以当第展示第二页数据的时候就使用ajax了,下面直接上代码:

<script type="text/javascript">
            $('#page').jqPaginator({
                totalPages:{{totalPages}},
                visiblePages: 10,
                currentPage:{{currentPage}},
                onPageChange: function (num, type) {
                    if (type == "change") {
                        $.ajax({
                            type: "get",
                            url: 'http://localhost:3001/api/v1/inn',
                            data: num,
                            dataType: "json",
                            success: function (data) {
                                $('#sample-table-1 tbody').empty('');
                                for (var i = 0;i < data.list.length;i++) {
                                    //判断是否有undefined
                                    data.list[i].trend = data.list[i].trend == undefined ? "":data.list[i].trend
                                    // console.log(data.list[i])
                                    var $tr = $("<tr>"+
                                            "<td>"+data.list[i].username+"</td>"+
                                            "<td>"+data.list[i].username+"</td>"+
                                            "<td>"+data.list[i].sgv+"</td>"+
                                            "<td>"+data.list[i].device+"</td>"+
                                            "<td>"+data.list[i].type+"</td>"+
                                            "<td>"+data.list[i].dateString+"</td>"+
                                            "<td>"+data.list[i].trend+"</td>"+
                                            +"</tr>");
                                    $('#sample-table-1 tbody').append($tr)
                                }
                                $('#sample-table-1 tbody').append($tr)
                            }
                        })
                    }
                }
            });
        </script>

上面是为了能够进行查询后再进行分页的操作。可以先让后台渲染号好页面,然后在调用下一页的时候将页面中包含数据的部分使用ajax请求的新数据替换掉,这样就可以做到查询数据之后再进行分页了,下面是查询后再分页的ajax操作

<script  type="text/javascript">
            $("#submit").on("click",function(){
                var content = $(".nav-search-input").val()
                $('#page').jqPaginator({
                    totalPages:{{totalPages}},
                visiblePages: 10,
                        currentPage:{{currentPage}},
                onPageChange: function (num, type) {
                        // if(type == 'change') {
                            $.ajax({
                                url: 'http://localhost:3001/api/v1/search/se',
                                type: "post",
                                contentType: "application/x-www-form-urlencoded; charset=utf-8",
                                data: {
                                    num: num,
                                    searchKey: content
                                },
                                dataType: "json",
                                success: function (data) {
                                    // console.log(data.totalPages)
                                    $('#sample-table-1 tbody').empty('');
                                    for (var i = 0; i < data.list.length; i++) {
                                        //判断是否有undefined
                                        data.list[i].trend = data.list[i].trend == undefined ? "":data.list[i].trend
                                        var $tr = $("<tr>" +
                                                // "<td>" + data.list[i].ttqId + "</td>" +
                                                "<td>" + data.list[i].username + "</td>" +
                                                "<td>" + data.list[i].sgv + "</td>" +
                                                "<td>" + data.list[i].device + "</td>" +
                                                "<td>" + data.list[i].type + "</td>" +
                                                "<td>" + data.list[i].dateString + "</td>" +
                                                "<td>" + data.list[i].trend + "</td>" +
                                                +"</tr>");
                                        $('#sample-table-1 tbody').append($tr)
                                    }
                                }
                            })
                        // }
                    }
                })

            })
        </script>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 点我查看本文集的说明及目录。 本项目相关内容( github传送 )包括: 实现过程: CH4 创建社交网站 CH...
    学以致用123阅读 1,469评论 1 2
  • 这部分主要是开源Java EE框架方面的内容,包括Hibernate、MyBatis、Spring、Spring ...
    杂货铺老板阅读 1,476评论 0 2
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,172评论 1 32
  • AJAX 原生js操作ajax 1.创建XMLHttpRequest对象 var xhr = new XMLHtt...
    碧玉含香阅读 3,375评论 0 7
  • 姓名:单国英 部门:万尚安简学习会 组别:待定 【知~学习】 六项精进诵读5遍,共85遍 大学诵读5遍,共85遍 ...
    单国英阅读 951评论 0 1