在之前的工作中我用的分頁有很多,一直不牢固,所以自己用起來也不是很順手,這是一個局部刷新的分頁,我試了很多,本想用mvcPager來做局部刷新,但是考慮到成本太高,放棄了,先來總結(jié)一下基于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//轉(zhuǎn)成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>內(nèi)容</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數(shù)據(jù)中的pageCount(把返回數(shù)據(jù)轉(zhuǎn)成object類型)var currentPage = eval("(" + data + ")").CurrentPage; //去返回的Json數(shù)據(jù)中的CurrentPagevar options = { bootstrapMajorVersion: 3, //版本currentPage: currentPage, //當前頁數(shù)numberOfPages: 5, //設(shè)置顯示的頁碼數(shù)totalPages:pageCount, //總頁數(shù)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>內(nèi)容</td>');$("#list").append('<td>'+item.Content+'</td>');$("#list").append('</tr>');$("#list").append('</table>'); }); }}});}};element.bootstrapPaginator(options);}}});}); 以上所述是小編給大家介紹的基于BootStrap實現(xiàn)局部刷新分頁,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網(wǎng)網(wǎng)站的支持!
新聞熱點
疑難解答