基于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 相关文章推荐
Prototype使用指南之array.js
Jan 10 Javascript
基于jQuery的history历史记录插件
Dec 11 Javascript
Javascript类定义语法,私有成员、受保护成员、静态成员等介绍
Dec 08 Javascript
分享一个用Mootools写的鼠标滑过进度条改变进度值的实现代码
Dec 12 Javascript
js打开windows上的可执行文件示例
May 27 Javascript
JavaScript基于原型链的继承
Jun 22 Javascript
Bootstrap中定制LESS-颜色及导航条(推荐)
Nov 21 Javascript
详解vue-Resource(与后端数据交互)
Jan 16 Javascript
微信小程序通过api接口将json数据展现到小程序示例
Jan 20 Javascript
VUE 实现动态给对象增加属性,并触发视图更新操作示例
Nov 29 Javascript
vue3为什么要用proxy替代defineProperty
Oct 19 Javascript
javascript代码简写的几种常用方式汇总
Aug 23 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加MYSQL服务器
2006/10/09 PHP
php简单获取复选框值的方法
2016/05/11 PHP
jquery1.4 教程二 ajax方法的改进
2010/02/25 Javascript
js实现运动logo图片效果及运动元素对象sportBox使用方法
2012/12/25 Javascript
使用简洁的jQuery方法实现隔行换色功能
2014/01/02 Javascript
jQuery实现动画效果的简单实例
2014/01/27 Javascript
教你如何使用firebug调试功能了解javascript闭包和this
2015/03/04 Javascript
jquery使用animate方法实现控制元素移动
2015/03/27 Javascript
基于jQuery实现仿百度首页换肤背景图片切换代码
2015/08/25 Javascript
原生js实现addClass,removeClass,hasClass方法
2016/04/27 Javascript
JS基于clipBoard.js插件实现剪切、复制、粘贴
2016/05/03 Javascript
Angular JS数据的双向绑定详解及实例
2016/12/31 Javascript
vue.js指令和组件详细介绍及实例
2017/04/06 Javascript
在Vue项目中使用jsencrypt.js对数据进行加密传输的方法
2019/04/17 Javascript
layui实现form表单同时提交数据和文件的代码
2019/10/25 Javascript
JS中==、===你分清楚了吗
2020/03/04 Javascript
Python 含参构造函数实例详解
2017/05/25 Python
python如何拆分含有多种分隔符的字符串
2018/03/20 Python
python中比较两个列表的实例方法
2019/07/04 Python
python用win32gui遍历窗口并设置窗口位置的方法
2019/07/26 Python
python实现飞机大战项目
2020/03/11 Python
python 获取域名到期时间的方法步骤
2021/02/10 Python
HTML5中div、article、section的区别及使用介绍
2013/08/14 HTML / CSS
法国家具及室内配件店:home24
2017/01/21 全球购物
新媒传信软件测试面试题
2013/02/24 面试题
自考生毕业自我鉴定
2013/10/10 职场文书
护士自我鉴定
2013/10/23 职场文书
工作自我评价怎么写
2014/01/29 职场文书
学校校庆演讲稿
2014/05/22 职场文书
房屋出售授权委托书
2014/10/12 职场文书
检讨书范文500字
2015/01/28 职场文书
教师评职称工作总结2015
2015/04/20 职场文书
乡镇保密工作承诺书
2015/05/04 职场文书
小学生安全保证书
2015/05/09 职场文书
国庆节新闻稿
2015/07/17 职场文书
vue.js 使用原生js实现轮播图
2022/04/26 Vue.js