基于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 相关文章推荐
jQuery 跨域访问问题解决方法
Dec 02 Javascript
JQuery FlexiGrid的asp.net完美解决方案 dotNetFlexGrid-.Net原生的异步表格控件
Sep 12 Javascript
js实现广告漂浮效果的小例子
Jul 02 Javascript
JS 仿腾讯发表微博的效果代码
Dec 25 Javascript
jquery ztree实现下拉树形框使用到了json数据
May 14 Javascript
wap浏览自动跳转到wap页面的js代码
May 17 Javascript
jQuery实现产品对比功能附源码下载
Aug 09 Javascript
Vue计算属性的学习笔记
Mar 22 Javascript
vue中进入详情页记住滚动位置的方法(keep-alive)
Sep 21 Javascript
基于vue-cli、elementUI的Vue超简单入门小例子(推荐)
Apr 17 Javascript
微信小程序实现页面浮动导航
Jan 08 Javascript
vue 递归组件的简单使用示例
Jan 14 Vue.js
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
什么是MVC,好东西啊
2007/05/03 PHP
基于php验证码函数的使用示例
2013/05/03 PHP
解析php mysql 事务处理回滚操作(附实例)
2013/08/05 PHP
小议Function.apply()之二------利用Apply的参数数组化来提高 JavaScript程序性能
2006/11/30 Javascript
javascript 实现父窗口引用弹出窗口的值的脚本
2007/08/07 Javascript
TextArea设置MaxLength属性最大输入值的js代码
2012/12/21 Javascript
jQuery+css实现图片滚动效果(附源码)
2013/03/18 Javascript
html中使用javascript调用本地程序(exe、doc等)实现代码
2013/04/26 Javascript
jquery高效反选具体实现
2013/05/05 Javascript
jquery实现隐藏在左侧的弹性弹出菜单效果
2015/09/18 Javascript
JS实现Fisheye效果动感放大菜单代码
2015/10/21 Javascript
jquery实现简单的全选和反选功能
2016/01/02 Javascript
基于jQuery实现文本框只能输入数字(小数、整数)
2016/01/14 Javascript
一波JavaScript日期判断脚本分享
2016/03/06 Javascript
javascript中利用柯里化函数实现bind方法【推荐】
2016/04/29 Javascript
jQuery插件版本冲突的处理方法分析
2017/01/16 Javascript
JS前端开发判断是否是手机端并跳转操作(小结)
2017/02/05 Javascript
对称加密与非对称加密优缺点详解
2017/02/06 Javascript
vue通过cookie获取用户登录信息的思路详解
2018/10/30 Javascript
Vue注册组件命名时不能用大写的原因浅析
2019/04/25 Javascript
Vue触发隐藏input file的方法实例详解
2019/08/14 Javascript
Vue中错误图片的处理的实现代码
2019/11/07 Javascript
JavaScript修改注册表实例代码
2020/01/05 Javascript
JavaScript Html实现移动端红包雨功能页面
2021/01/10 Javascript
python编写弹球游戏的实现代码
2018/03/12 Python
Python实现通过继承覆盖方法示例
2018/07/02 Python
Python实现结构体代码实例
2020/02/10 Python
简单了解Java Netty Reactor三种线程模型
2020/04/26 Python
python利用文件时间批量重命名照片和视频
2021/02/09 Python
英国时尚优质的女装:Hope Fashion
2018/08/14 全球购物
校园摄影活动策划方案
2014/02/05 职场文书
行政管理专业求职信
2014/07/06 职场文书
2014年底个人工作总结
2015/03/10 职场文书
2016党员读书思廉心得体会
2016/01/23 职场文书
2016优秀教师先进个人事迹材料
2016/02/25 职场文书
jquery插件实现悬浮的菜单
2021/04/24 jQuery