基于BootStrap实现局部刷新分页实例代码


Posted in Javascript onAugust 08, 2016

在之前的工作中我用的分页有很多,一直不牢固,所以自己用起来也不是很顺手,这是一个局部刷新的分页,我试了很多,本想用mvcPager来做局部刷新,但是考虑到成本太高,放弃了,先来总结一下基于bootstrap的分页吧,便于自己以后使用

开源地址 https://github.com/lyonlai/bootstrap-paginator

首先引用

Jquery

bootstrap.min.js

bootstrap-paginator.min.js

控制器代码

[AuthorizationCodeAttribute]
[Description("评论信息")]
[HttpPost]
public ActionResult Comment(int id, int? page)
{
#region 评论列表 
var dal = new CarCommentOperator();
int pageIndex = page ?? 1;//当前页
if (!string.IsNullOrEmpty(Request.QueryString["pageindex"]))
{
if (!int.TryParse(Request.QueryString["pageindex"], out pageIndex))
{
pageIndex = 1;
}
}
const int pageSize = 2;
long totalCount;
long totalPageCount; 
IEnumerable<CarComment> list = dal.GetList(pageIndex, pageSize, out totalPageCount, out totalCount, "CarId=" + id);
var commentIPagedList = new StaticPagedList<CarComment>(list, pageIndex, pageSize, Convert.ToInt32(totalCount));
#endregion
//转成Json格式
var strResult = "{\"pageCount\":" + commentIPagedList.PageCount + ",\"CurrentPage\":" + commentIPagedList.PageNumber + ",\"list\":" + JsonConvert.SerializeObject(list) + "}"; 
return Json(strResult, JsonRequestBehavior.AllowGet);
}

js代码

<script type="text/javascript">
$(document).ready(function() { 
var carId = 1;
$.ajax({
url: "/car/Comment",
datatype:'json',
type: "Post",
data: "id=" + carId,
success: function(data) { 
if (data!=null) { 
$.each(eval("(" + data + ")").list, function(index, item) { //遍历返回的json 
$("#list").append('<table>');
$("#list").append('<tr>');
$("#list").append('<td>评论者</td>');
$("#list").append('<td>'+item.UserProfileId+'</td>');
$("#list").append('</tr>');
$("#list").append('<tr>');
$("#list").append('<td>内容</td>');
$("#list").append('<td>'+item.Content+'</td>');
$("#list").append('</tr>');
$("#list").append('</table>'); 
}); //添加select option 
$("#commentList").append('<div id="pager"><ul id="page"></ul></div>');
var element = $("#page"); 
var pageCount = eval("(" + data + ")").pageCount; //取返回的Json数据中的pageCount(把返回数据转成object类型)
var currentPage = eval("(" + data + ")").CurrentPage; //去返回的Json数据中的CurrentPage
var options = { 
bootstrapMajorVersion: 3, //版本
currentPage: currentPage, //当前页数
numberOfPages: 5, //设置显示的页码数
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;
}
//}
//pageUrl: function(type, page, current) {
// return "/car/Details?page=" + page;
},//点击事件
onPageClicked: function(event, originalEvent, type, page) { 
$.ajax({
url: "/car/Comment?id="+carId,
type: "Post",
data:"page="+ page,
success: function(data1) {
if (data1!=null) {
$("#list").html("");
$.each(eval("(" + data1 + ")").list, function (index, item) { //遍历返回的json 
$("#list").append('<table style="border: 1px solid #00ced1;width: 300px">');
$("#list").append('<tr>');
$("#list").append('<td>评论者</td>');
$("#list").append('<td>'+item.UserProfileId+'</td>');
$("#list").append('</tr>');
$("#list").append('<tr>');
$("#list").append('<td>内容</td>');
$("#list").append('<td>'+item.Content+'</td>');
$("#list").append('</tr>');
$("#list").append('</table>'); 
}); 
}
}
});
}
};
element.bootstrapPaginator(options);
}
}
});
});

以上所述是小编给大家介绍的基于BootStrap实现局部刷新分页,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js获取dom的高度和宽度(可见区域及部分等等)
Jun 13 Javascript
javascript:文字不间断向左移动的实例代码
Aug 08 Javascript
javascript判断是否按回车键并解决浏览器之间的差异
May 13 Javascript
动态加载jQuery的方法
Jun 16 Javascript
jQuery+ajax实现滚动到页面底部自动加载图文列表效果(类似图片懒加载)
Jun 07 Javascript
深入浅析search 搜索框的写法
Aug 02 Javascript
HTML的select控件美化
Mar 27 Javascript
使用vue构建一个上传图片表单
Jul 04 Javascript
Angular实现的table表格排序功能完整示例
Dec 22 Javascript
Vue自定义属性实例分析
Feb 23 Javascript
JS实现选项卡效果的代码实例
May 20 Javascript
JS中this的4种绑定规则详解
Feb 04 Javascript
js智能获取浏览器版本UA信息的方法
Aug 08 #Javascript
jQuery.ajax 跨域请求webapi设置headers的解决方案
Aug 08 #Javascript
一个超简单的jQuery回调函数例子(分享)
Aug 08 #Javascript
Bootstrap Table服务器分页与在线编辑应用总结
Aug 08 #Javascript
使用jQuery5分钟快速搞定双色表格的简单实例
Aug 08 #Javascript
BootStrap Table 分页后重新搜索问题的解决办法
Aug 08 #Javascript
用js读写cookie的简单方法(推荐)
Aug 08 #Javascript
You might like
php数组函数序列之array_unshift() 在数组开头插入一个或多个元素
2011/11/07 PHP
详解Laravel视图间共享数据与视图Composer
2016/08/04 PHP
关于IE7 IE8弹出窗口顶上
2008/12/22 Javascript
JS复制到剪贴板示例代码
2013/10/30 Javascript
讲解JavaScript中for...in语句的使用方法
2015/06/03 Javascript
vue之数据交互实例代码
2017/06/20 Javascript
vue下拉列表功能实例代码
2018/04/08 Javascript
通过实例学习React中事件节流防抖
2019/06/17 Javascript
koa2服务端使用jwt进行鉴权及路由权限分发的流程分析
2019/07/22 Javascript
Vue路由守卫之路由独享守卫
2019/09/25 Javascript
Vuex的API文档说明详解
2020/02/05 Javascript
详解如何在vue+element-ui的项目中封装dialog组件
2020/12/11 Vue.js
[01:25:33]完美世界DOTA2联赛PWL S3 INK ICE vs Magma 第二场 12.20
2020/12/23 DOTA
Python设计模式之观察者模式实例
2014/04/26 Python
Django在Win7下的安装及创建项目hello word简明教程
2014/07/14 Python
Python中实现单例模式的n种方式和原理
2018/11/14 Python
Python面向对象之类的定义与继承用法示例
2019/01/14 Python
pandas把所有大于0的数设置为1的方法
2019/01/26 Python
Django web框架使用url path name详解
2019/04/29 Python
Python extract及contains方法代码实例
2020/09/11 Python
HTML5 Canvas图像模糊完美解决办法
2018/02/06 HTML / CSS
俄罗斯一家时尚女装商店:Charuel
2019/12/04 全球购物
写出SQL四条最基本的数据操作语句(DML)
2012/12/12 面试题
计算机工程学院个人求职信
2013/10/05 职场文书
环保专业大学生职业规划设计
2014/01/10 职场文书
法律六进活动方案
2014/03/13 职场文书
有趣的广告词
2014/03/18 职场文书
合作投资意向书
2014/04/01 职场文书
预防传染病方案
2014/06/14 职场文书
教师演讲稿开场白
2014/08/25 职场文书
成绩单评语
2015/01/04 职场文书
护士实习自荐信
2015/03/06 职场文书
2015年教师节感恩寄语
2015/03/23 职场文书
办公室主任岗位职责范本
2015/03/31 职场文书
股东合作协议书模板2篇
2019/11/05 职场文书
一看就懂的MySQL的聚簇索引及聚簇索引是如何长高的
2021/05/25 MySQL