基于BootStrap實現(xiàn)局部刷新分頁實例代碼
在之前的工作中我用的分頁有很多,一直不牢固,所以自己用起來也不是很順手,這是一個局部刷新的分頁,我試了很多,本想用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ù)中的CurrentPage
var 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)局部刷新分頁,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
javascript實現(xiàn)日歷控件(年月日關(guān)閉按鈕)
經(jīng)常使用google的朋友一定對google絢麗的日歷控件記憶猶新吧,那我們也來實現(xiàn)一個,雖然功能和效果比不上,但重要的是實現(xiàn)的過程2012-12-12
微信小程序wx.getImageInfo()如何獲取圖片信息
這篇文章主要為大家詳細介紹了微信小程序wx.getImageInfo()如何獲取圖片信息,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-01-01
js從10種顏色中隨機取色實現(xiàn)每次取出不同的顏色
昨天在做js 從10種顏色中隨機取色,并每次取出的顏色不同,具體的實現(xiàn)思路如下,感興趣的朋友可以參考下2013-10-10

