zoukankan      html  css  js  c++  java
  • 基于bootstrap的局部刷新的分页

    在之前的工作中我用的分页有很多,一直不牢固,所以自己用起来也不是很顺手,这是一个局部刷新的分页,我试了很多,本想用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; 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);
                            }
                        }
                    });
                });
    

      

  • 相关阅读:
    04.用户故事与敏捷方法--搜集故事笔记
    01.用户故事与敏捷方法——起步笔记
    00-B.用户故事与敏捷方法前言笔记
    00-A.用户故事与敏捷方法序言笔记
    14.表单脚本——JavaScript高级程序设计(笔记)
    13.事件——JavaScript高级程序设计(笔记)
    17.错误处理与调试——JavaScript高级程序设计(笔记)
    12.DOM2和DOM3——JavaScript高级程序设计
    11.DOM扩展——JavaScript高级程序设计(笔记)
    10.Dom——JavaScript高级程序设计(笔记)
  • 原文地址:https://www.cnblogs.com/llxy/p/3868034.html
Copyright © 2011-2022 走看看