【MVC】bootstrap-paginator 分頁插件筆記


    bootstrap-paginator基於bootstrap框架,使用起來非常簡單。github地址:https://github.com/lyonlai/bootstrap-paginator

    在bootstrap框架下只需要引入一個bootstrap-paginator.js

<script src="~/Content/js/bootstrap-paginator.min.js"></script>

   html:

  <div id="logtable"> @Html.Action("GetExamLogs")
   </div>
 <div id="example"></div>

 GetExamlogs一個顯示圖表的partview:

@using FireControl.Helper
@model IEnumerable<FireControl.Models.ExamResult>

<table class="table table-hover table-bordered">
    <tr>
        <td>考試</td>
        <td>試卷</td>
        <td>姓名</td>
        <td>總分</td>
        <td>成績</td>
        <td>用時</td>
        <td>開始時間</td>
        <td>結束時間</td>
        <td>解析</td>
    </tr>
    @foreach (var e in Model)
    {
        <tr><td>@e.ExamName</td><td>@e.PaperName</td><td>@e.UserName</td><td>@e.TotalScore</td><td>@e.Score</td><td>@CommonHelper.ConverTime(e.ExpenseTime)</td><td>@e.StartTime</td><td>@e.EndTime</td>
            <td> <a class="ulink" href="@Url.Action("ActionDetail","Exam",new{examresid=e.Id})">查看解析</a></td>
        </tr>
    }
</table>
<input  type="hidden" id="totalpage" value="@ViewBag.TotalPage" />
View Code

 js:

<script >
    $(function () {
        var options = {
            currentPage: 1,//當前頁
            totalPages: $("#totalpage").val(),//總頁數
            numberofPages: 5,//顯示的頁數
            
            itemTexts: function(type, page, current) { //修改顯示文字
                switch (type) {
                case "first":
                    return "第一頁";
                case "prev":
                    return "上一頁";
                case "next":
                    return "下一頁";
                case "last":
                    return "最后一頁";
                case "page":
                    return page;
                }
            }, onPageClicked: function (event, originalEvent, type, page) { //異步換頁
                $.post("/Exam/GetExamLogs",{page:page,take:2},function(data) {
                    $("#logtable").html(data);
                });
            },
                    
    };
        $("#example").bootstrapPaginator(options);
    });
</script>

Action

 public ActionResult GetExamLogs(int page = 1, int take = 10)
        {
            //先簡單的取出成績吧
            var id = CheckValid();
            var res = _repository.GetExamResultsByUserId(id).ToList();
            ViewBag.TotalPage = Math.Ceiling(((float)res.Count() / take));
            var targets = res.Skip(take * (page - 1)).Take(take);
            return PartialView(targets);
        }

最后效果:

 之前一直使用 一直使用的 jPaginate,感興趣的同學可以移步。先對而言,還是paginator簡單好用。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM