使用bootstrap-paginator.js 分页来进行ajax 异步分页请求示例

所属分类: 网络编程 / JavaScript 阅读数: 210
收藏 0 赞 0 分享

使用bootstrap-paginator.js 分页来进行ajax 异步分页请求

具体的做法如下 :

首先定义一个异步提交请求的ajax 函数,其完整的函数如下:

var nid= $("#lbnid").val(); // 获取当前新闻编号 
var cpage = 1; // 当前页面号 
var tpage = 10; // 总页面数 
 
 
function getPaging() { 
  getComment(cpage); //获取新闻评论 
} 
 
//点击查看新闻评论 
$("#one2").click(function () { 
  getPaging(); 
}); 
 
//获取新闻评论评论 
function getComment(page) { 
  $.ajax({ 
    type: "get", 
    data: nid, 
    async: "false", 
    url: "/comment/GetComment?nid=" + nid+ "&page=" + page, 
    success: function (info) { 
 
      changeModel(info); // 更新局部页面 
 
      var totalpage = $("#totalpage").val(); //当前页面号 
      var curtpage = $("#curtpage").val(); // 总页面号 
      if (curtpage && totalpage) { 
        cpage = curtpage; 
        tpage = totalpage; 
      } 
 
      display(cpage, tpage); //显示评论 
 
    }, 
 
    error: function () { 
      alert("加载失败!请稍后重试!"); 
    } 
 
  }); 
} 
 
/*  obj: ajax 返回的html 数据 */ 
// 更新局部页面  
function changeModel(obj) { 
 
  var comt = $(".Comments"); 
  comt.replaceWith("<div class=Comments>" + obj + "</div>"); 
} 
 
 
/* curreentpage: 当前页面号; tpage: 总的页面数 */ 
//显示新闻评论 
function display(curtpage, tpage) { 
  var options = { 
    bootstrapMajorVersion: 3,//版本 
    currentPage: curtpage, //当前页数 
    numberOfPages: 10,//设置显示的页码数 
    totalPages: tpage, //总页数 
    itemTexts: function (type, page, current) { 
      switch (type) { 
        case "first": 
          return "首页"; 
        case "prev": 
          return "上一页"; 
        case "next": 
          return "下一页"; 
        case "last": 
          return "末页"; 
        case "page": 
          return page; 
      } 
    }, 
  } 
  $("#page").bootstrapPaginator(options); 
} 

接下来就是修改原来的 bootstrap-paginator.js文件, 这也是最关键的一步

onPageClicked: function (event, originalEvent, type, page) { 
 
  //show the corresponding page and retrieve the newly built item related to the page clicked before for the event return 
 
  var currentTarget = $(event.currentTarget); 
 
  switch (type) { 
  case "first": 
    currentTarget.bootstrapPaginator("showFirst"); 
    getComment(page); // 自定义的获取新闻评论的方法,一宝要记得添加这个自定义的函数        
    break; 
  case "prev": 
    currentTarget.bootstrapPaginator("showPrevious"); 
    getComment(page); 
    break; 
  case "next": 
    currentTarget.bootstrapPaginator("showNext"); 
    getComment(page); 
    break; 
  case "last": 
    currentTarget.bootstrapPaginator("showLast"); 
    getComment(page); 
    break; 
  case "page": 
    currentTarget.bootstrapPaginator("show", page); 
    getComment(page); 
    break; 
  } 
 
}, 

接下来就OK了。运行截图如下:

 

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

更多精彩内容其他人还在看

验证javascript中Object和Function的关系的三段简单代码

今天重温经典书籍。这一次看的是博客园李战老师写的<<悟透JavaScript>>,也是被楼猪翻看最多的技术书籍之一。
收藏 0 赞 0 分享

用apply让javascript函数仅执行一次的代码

有时候我们只想要让某些脚步函数执行一次就算完成任务了。如何实现这种功能呢?简单模仿下面这段就可以轻松搞定了
收藏 0 赞 0 分享

两种简单实现菜单高亮显示的JS类代码

近期在写一个博客管理后台的前端,涉及在同一页面两种高亮显示当前菜单的需求.
收藏 0 赞 0 分享

js getElementsByTagName的简写方式

用最少的代码,做最多的事情. getElementsByTagName的简写方法.
收藏 0 赞 0 分享

JavaScript的单例模式 (singleton in Javascript)

JavaScript的单例模式 (singleton in Javascript)
收藏 0 赞 0 分享

JavaScript接口实现代码 (Interfaces In JavaScript)

接口是面向对象编程里的重要特性,遗憾的是JavaScript并没有提供对接口的支持!怎么实现接口呢?
收藏 0 赞 0 分享

js鼠标左右键 键盘值小结

js鼠标左右键,键盘值实现代码,主要方便检测鼠标的按键返回。
收藏 0 赞 0 分享

Js setInterval与setTimeout(定时执行与循环执行)的代码(可以传入参数)

最近在做项目时用到了定时执行的js方法,setInterval与setTimeout时间长了不用有些生疏了,所以自己总结了一下,记下来,以便以后使用。
收藏 0 赞 0 分享

cnblogs TagCloud基于jquery的实现代码

自创"山寨版"的"博客园"TagCloud!...
收藏 0 赞 0 分享

JavaScript 开发规范要求(图文并茂)

作为一名开发人员(WEB前端JavaScript开发),不规范的开发不仅使日后代码维护变的困难,同时也不利于团队的合作,通常还会带来代码安全以及执行效率上的问题。
收藏 0 赞 0 分享
查看更多