自己实现的ajax分页

/**
 * 分页
 * @author 陈琼和
 * @param data  json数据,包含totalPage,count
 * @param page  获取的页数
 * @param obj   表格中的对象
 * @param funcName  页码点击跳转的函数名
 * @constructor
 */
function Page(data,page,obj,funcName)
{
    this.totalPage = data.totalPage;
    this.count = data.count;
    this.nowPage = page;
    this.pageStr = function ()
    {
        //根据总的记录数,循环构造翻页字符串
        var rollPage = 5;//设置每页显示的提供点击的页数
        var offset = Math.ceil((rollPage / 2));
        var pageStr = ‘<tr><td  class="pageStr" colspan="‘+$(obj).closest(‘table‘).find(‘th‘).length+‘">‘;
        pageStr += ‘<span class="rows">共 ‘+this.count+‘ 条记录</span>‘;
        pageStr += ‘ <span class="rows">第‘+this.nowPage+‘页 </span>‘;
        if(this.totalPage>offset && this.nowPage>offset)
            pageStr = ‘<a href="javascript:void(0);" class="first" onclick="‘+funcName+‘(1,this)">首页</a>‘;
        if(this.nowPage > 1)
            pageStr += ‘<a href="javascript:void(0);" class="prev" onclick="‘+funcName+‘(‘+(this.nowPage-1)+‘,this)">上一页</a>‘;
        var p;  //字符页码
        for(var i=1; i<=rollPage; i++)
        {
            if(this.nowPage < offset)
                p = i;
            else if(this.nowPage + offset > this.totalPage)
                p = this.totalPage-offset+i;
            else
                p = this.nowPage-offset+i;
            //拼接字符串
            if(p > 0 && p != this.nowPage)
                if(p <= this.totalPage)
                    pageStr += ‘<a href="javascript:void(0);" class="num" onclick="‘+funcName+‘(‘+p+‘,this)">‘+p+‘</a>‘;
                else
                    break;
            else
                if(this.nowPage > 0 && this.totalPage != 1)
                    pageStr += ‘<a class="current" href="javascript:void(0);">‘+p+‘</a>‘;
        }
        if(this.nowPage < this.totalPage)
            pageStr += ‘<a href="javascript:void(0);" class="next" onclick="‘+funcName+‘(‘+(this.nowPage+1)+‘,this)">下一页</a>‘;
        if(this.totalPage>offset && (this.nowPage+offset)<this.totalPage)
            pageStr += ‘<a href="javascript:void(0);" class="end" onclick="‘+funcName+‘(‘+this.totalPage+‘,this)">尾页</a>‘;
        pageStr += ‘  <span class="rows">共‘+this.totalPage+‘页</span> ‘;
        pageStr += ‘</td></tr>‘;
        return pageStr;
    }
}

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。