项目中需要实现文章列表的分页显示,由于使用了bootstrap框架,所以我们选择bootstrap的分页实现方法。网上有一些这方面的介绍文章,并且也有相关的示例程序。这里结合我们的项目,介绍一下使用bootstrap的分页插件实现分页功能的方法。

1 html部分

bootstrap分页插件的名称是 bootstrap-paginator.js,下载地址

GitHub 官网地址:https://github.com/lyonlai/bootstrap-paginator,会下载很多文件,有demo程序,有css文件等,我们只使用bootstrap-paginator.js,当然需要bootstrap的css和js的基础文件。

页面引用

<script type="text/javascript" src="/js/jquery.js"></script>

<script type="text/javascript" src="/js/bootstrap.min.js"></script>

<script type="text/javascript" src="/js/bootstrap-paginator.js"></script>

html代码

<div id=" article _content"></div>

<div id=" article _page"></div>

2 js部分

思路是先利用ajax取出首页文章列表,然后是页码的显示与功能实现,第二次调用使用ajax取出与页码对应的文章列表,从而实现分页功能。两次调用ajax都是调用一个接口,不过第一次调用的currentPage是固定值,第二次调用的currentPage是根据点击页码取出的page值。

$(document).ready(function() {

$.ajax({

url: g_ServerAPI + "Column",

datatype: "json",

type: "Post",

data: "get=article&pageno="+ currentPage +"&pagesize=10",

//此处的currentPage提前进行了初始化,也就是为1

async:false,

success: function(data) {

var channelArticleAll = eval("(" + data + ")");

if(channelArticleAll.state == 1) {

for(var i=0;i<channelArticleAll.rows.length;i++){

var channelArticleAllItem='<li>\

<a href="">'+ channelArticleAll.rows[i].title +'</a>\

</li>';

$("# article _content ").append(channelArticleAllItem);

}

pageCount = (channelArticleAll.total/10)+1;

var options = {

bootstrapMajorVersion: 2, //版本

currentPage: currentPage, //当前页数

totalPages: pageCount, //总页数

itemTexts: function(type, page, current) {

switch(type) {

case "first":

return "首页";

case "prev":

return "上一页";

case "next":

return "下一页";

case "last":

return "末页";

case "page":

return page;

}

},

onPageClicked: function(event, originalEvent, type, page) {

$.ajax({

url: g_ServerAPI + "Column",

type: "Post",

data: " get=article&pageno ="+ page +"&pagesize=10",

success: function(data1) {

if(data1 != null) {

$("# article _content ").children().remove();

var channelArticleAll1 = eval("(" + data1 + ")");

for(var i=0;i<channelArticleAll1.rows.length;i++){

var   channelArticleAllItem1='<li>\

<a href="">'+ channelArticleAll1.rows[i].title +'</a>\

</li>';

$("# article _content ").append(channelArticleAllItem1);

}

}

}

});

}

};

$('#article _page').bootstrapPaginator(options);

}

},

error: function(XMLHttpRequest, textStatus, errorThrown) {

console.log("list article error!");

}

});

});

此时分页功能是能够实现的,但是有一个问题,就是显示的页码是竖着的,我们正常显示的页码应该是显示在一排,需要将bootstrap-paginator.js里的listContainer = $("<ul></ul>"),改成listContainer = $("<ul class='pagination'></ul>"),这样就能达到我们的目的,实现比较好的分页效果。

最后的页面效果是

用bootstrap的分页插件实现分页效果,操作起来很方便,以上介绍是简单的应用,如果需要实现更好的效果,还需要继续完善。

参考文章:http://www.jb51.net/article/85368.htm

http://www.cnblogs.com/moretry/p/4441728.html

bootstrap分页插件的使用的更多相关文章

  1. Bootstrap 分页插件 ajax获取数据显示

    Bootstrap 分页插件 ajax获取数据显示 标签(空格分隔): bootstrap 文章的内容是使用bootstrap-paginator进行分页,使用ajax获取后台数据.渲染. 1. 版本 ...

  2. Bootstrap分页插件ajax返回数据,工具类的编写

    使用Bootstrap分页插件时,需要返回指定的参数,这样Bootstrap才能够识别 需要引入的css: <!-- boostrap table --> <link href=&q ...

  3. bootstrap分页插件--Bootstrap Paginator的使用&AJAX版备份(可单独使用)

    html部分: <ul class="pagination"></ul> <!--bootstrap3版本用ul包裹--> <div cl ...

  4. Bootstrap分页插件:bootstrap-paginator

    今天和大家分享一个Bootstrap的分页插件:bootstrap-paginator. 插件地址: https://github.com/lyonlai/bootstrap-paginator 先看 ...

  5. JSP分页之结合Bootstrap分页插件进行简单分页

    结合Bootstrap的分页插件实现分页,其中策略是每次显示5个按钮,然后根据当前页的不同来进行不同的显示: 1. 当前页<3,如果当前页大于5页就显示前五页,不然就显示1~totalPage. ...

  6. Bootstrap分页插件--Bootstrap Paginator

    开源中国有一篇介绍的很详细,链接:https://my.oschina.net/shunshun/blog/204587 使用这个插件和使用其他Bootstrap内置的插件一样,需要引入如下文件: & ...

  7. 用bootstrap 分页插件问题

    如果页面加载js 一定要记得引入分页的东西 ,不然不会有数据, <script src="${path}/js/bootstrap-paginator.min.js"> ...

  8. Bootstrap Paginator分页插件+ajax

    Bootstrap Paginator分页插件下载地址: DownloadVisit Project in GitHub  Bootstrap分页插件属性介绍: http://www.cnblogs. ...

  9. bootstrap分页

    使用bootstrap分页插件,如下代码是html代码 <title>分页</title> <link href="page/bootstrap-3.3.5-d ...

随机推荐

  1. SVN 通过Shell Bash 获取项目Reversion号码

    接上篇  Jenkins Vue项目自动构建以及构建后续操作 在项目构建完成后,需要提供当前构建的一个唯一标识的东西,并告诉我们的上线系统,这个唯一标识的东西可以让我们在回退线上版本的时候变得很有用, ...

  2. Tutorial for MI5 ! flash MI5 to Native Anriod 9

    First ,you should download all zips you need Anriod 9.0 rom link:https://drive.google.com/uc?id=1 .. ...

  3. Cocos动作执行时,同时执行完毕再进行下一步的方式

    在js中,runAction是统一保存起来等单个文件运行完了再统一进行回调运行的,所以如果想在动作执行完毕之后调用某个函数,那这个函数就应该存在于回调函数中,不会就不能同步了

  4. 相机标定问题-Matlab & Py-Opencv

    一.相机标定基本理论 1.相机成像系统介绍 图中总共有4个坐标系: 图像坐标系:Op    坐标表示方法(u,v)                 Unit:Dots(个) 成像坐标系:Oi      ...

  5. SQL server 查询出现:---“子查询返回的值不止一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情况是不允许的。”SQL查询错误解析---

    最近用select进行数据筛选,碰到下面的这个错误: ---子查询返回的值不止一个.当子查询跟随在 =.!=.<.<=.>.>= 之后,或子查询用作表达式时,这种情况是不允许的 ...

  6. BZOJ 4710

    枚举几个同学分到了 对于每种特产求一个方案数(经典做法)乘起来 然后容斥 #include<bits/stdc++.h> using namespace std; #define rep( ...

  7. C# 中传参中的OUT 和 ref 区别 笔记

    //out传参前需要对参数进行赋值处理,ref则不需要.//out.ref 传参都可以对值进行改变 1 static void Main(string[] args) { ; //int J = 10 ...

  8. 编程菜鸟的日记-《软件测试》Ron Patton著-读书笔记

    第一部分 软件测试综述 第一章 软件测试的背景 1.软件测试员的目标:尽可能早地找到软件缺陷,并确保其能得以修复. 2.仅仅测试程序是否按预期方式运行有何问题:程序能完好的跑通并不代表软件不存在缺陷, ...

  9. CMD 中常见命令

    引自百度经验:https://jingyan.baidu.com/article/67508eb41d44a09cca1ce4f1.html ipConfig:查询ip ping:查询连接速度: pi ...

  10. Chrome 启动全屏,并可以F11退出

    新建start.bat文件,作用,打开浏览器,并模拟按下F11,全屏,内容如下: start C:\Program" "Files" "(x86)\Google ...