基于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 相关文章推荐
Extjs4 Treegrid 使用心得分享(经验篇)
Jul 01 Javascript
javascript表单验证和Window详解
Dec 11 Javascript
分享20个提升网站界面体验的jQuery插件
Dec 15 Javascript
详细分析使用AngularJS编程中提交表单的方式
Jun 19 Javascript
基于angular2 的 http服务封装的实例代码
Jun 29 Javascript
在Js页面通过POST传递参数跳转到新页面详解
Aug 25 Javascript
select标签设置默认选中的选项方法
Mar 02 Javascript
javaScript实现鼠标在文字上悬浮时弹出悬浮层效果
Apr 12 Javascript
vue.js父子组件通信动态绑定的实例
Sep 28 Javascript
提升node.js中使用redis的性能遇到的问题及解决方法
Oct 30 Javascript
javascript实现蒙版与禁止页面滚动
Jan 11 Javascript
微信小程序canvas开发水果老虎机的思路详解
Feb 07 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套件 php版本升级方法(php5.5.24)
2015/05/10 PHP
PHP Streams(流)详细介绍及使用
2015/05/12 PHP
thinkPHP5.0框架整体架构总览【应用,模块,MVC,驱动,行为,命名空间等】
2017/03/25 PHP
实例分析10个PHP常见安全问题
2019/07/09 PHP
js wmp操作代码小结(音乐连播功能)
2008/11/08 Javascript
js播放wav文件(源码)
2013/04/22 Javascript
一个JavaScript操作元素定位元素的实例
2014/10/29 Javascript
浅谈js中的闭包
2015/03/16 Javascript
JavaScript中的substr()方法使用详解
2015/06/06 Javascript
JavaScript中的cacheStorage使用详解
2015/07/29 Javascript
jQuery通过ajax请求php遍历json数组到table中的代码(推荐)
2016/06/12 Javascript
JSONP和批量操作功能的实现方法
2016/08/21 Javascript
javascript入门之string对象【新手必看】
2016/11/22 Javascript
Bootstrap CSS布局之表单
2016/12/17 Javascript
如何解决vue与传统jquery插件冲突
2017/03/20 Javascript
vue+node+webpack环境搭建教程
2017/11/05 Javascript
Node.js web 应用如何封装到Docker容器中
2020/09/01 Javascript
python正常时间和unix时间戳相互转换的方法
2015/04/23 Python
python装饰器与递归算法详解
2016/02/18 Python
深入学习Python中的装饰器使用
2016/06/20 Python
python 计算数据偏差和峰度的方法
2019/06/29 Python
Python变量作用域LEGB用法解析
2020/02/04 Python
Keras中的多分类损失函数用法categorical_crossentropy
2020/06/11 Python
美国家喻户晓的保健品品牌:Vitamin World(维他命世界)
2016/08/19 全球购物
日本面向世界,国际级的免税在线购物商城:DOKODEMO
2017/02/01 全球购物
Myprotein荷兰官网:欧洲第一运动营养品牌
2020/07/11 全球购物
毕业生自我鉴定
2013/11/05 职场文书
课程改革实施方案
2014/03/16 职场文书
小学生环保标语
2014/06/13 职场文书
小学教师读书活动总结
2014/07/08 职场文书
大学生党员个人对照检查材料范文
2014/09/25 职场文书
副乡长民主生活会个人对照检查材料思想汇报
2014/10/01 职场文书
婚宴新娘致辞
2015/07/28 职场文书
初中同学会致辞
2015/08/01 职场文书
详解CSS3.0(Cascading Style Sheet) 层叠级联样式表
2021/07/16 HTML / CSS
CSS3 Tab动画实例之背景切换动态效果
2021/08/23 HTML / CSS