jquery ajax分頁插件的簡單實現(xiàn)
說到基于jQuery的ajax分頁插件,那我們就先看看主要的代碼結(jié)構(gòu):
1、首先定義一個pager對象:
var sjPager = window.sjPager = {
opts: {
//默認(rèn)屬性
pageSize: 10,
preText: "pre",
nextText: "next",
firstText: "First",
lastText: "Last",
shiftingLeft: 3,
shiftingRight: 3,
preLeast: 2,
nextLeast: 2,
showFirst: true,
showLast: true,
url: "",
type: "POST",
dataType: "JSON",
searchParam: {},
beforeSend: null,
success: null,
complete: null,
error: function () {
alert("抱歉,請求出錯,請重新請求!");
},
},
pagerElement: null,//分頁dom元素
commonHtmlText: {
//公共文本變量
},
init: function (obj, op) {
//對象初始化
},
doPage: function (index, pageSize, searchParam) {
//執(zhí)行分頁方法
},
getTotalPage: function () {
//獲取總頁數(shù)
},
createPreAndFirstBtn: function (pageTextArr) {
//創(chuàng)建上一頁、首頁按鈕鏈接
},
createNextAndLastBtn: function (pageTextArr) {
//創(chuàng)建下一頁、尾頁按鈕鏈接
},
createIndexBtn: function (pageTextArr) {
//中間分頁索引按鈕鏈接
},
renderHtml: function (pageTextArr) {
//渲染分頁控件到頁面
},
createSpan: function (text, className) {
//創(chuàng)建span
},
createIndexText: function (index, text) {
//創(chuàng)建索引文本
},
jumpToPage: function () {
//跳轉(zhuǎn)到
}
}
對象包含了分頁的屬性及用到的方法,doPage()為分頁的核心方法。
2、進行jQuery擴展
$.fn.sjAjaxPager = function (option) {
return sjPager.init($(this), option);
};
3、插件使用
<body> <table id="dataTable" border="1px"></table> <div id="pager"></div> </body>
$(function() {
$('#pager').sjAjaxPager({
url: "Handler1.ashx",
pageSize: 10,
searchParam: {
/*
* 如果有其他的查詢條件,直接在這里傳入即可
*/
id: 1,
name:'test',
},
beforeSend: function () {
},
success: function (data) {
/*
*返回的數(shù)據(jù)根據(jù)自己需要處理
*/
var tableStr = "<tr><td>Id</td><td>姓名</td><td>年齡</td></tr>";
$.each(data.items, function(i,v) {
tableStr += "<tr><td>" + v.Id + "</td><td>" + v.Name + "</td><td>" + v.Age + "</td></tr>";
});
$('#dataTable').html(tableStr);
},
complete: function () {
}
});
})
有沒有發(fā)現(xiàn)使用方式與直接使用ajax基本是一樣一樣的?
最后我們可以看下出來的效果:(表格樣式?jīng)]有設(shè)置比較丑,分頁樣式自己也可以根據(jù)需要修改css文件)

F12打開調(diào)試工具,點擊分頁查看發(fā)送的請求及響應(yīng):


pageIndex和pageSize為插件默認(rèn)的參數(shù),在后臺可以直接在Request中獲取。特別需要注意的是插件的響應(yīng)也是需要遵循特定的格式{"total":0,"items":[]},如上圖中所示total代表數(shù)據(jù)總記錄數(shù),items代表分頁的數(shù)據(jù)。
這里只有代碼的大體結(jié)構(gòu)及呈現(xiàn)的效果,大家不妨自己先動手實現(xiàn)一下。
- jQuery Pagination Ajax分頁插件(分頁切換時無刷新與延遲)中文翻譯版
- jquery分頁插件jquery.pagination.js使用方法解析
- Jquery 分頁插件之Jquery Pagination
- 最實用的jQuery分頁插件
- 分享一個自己動手寫的jQuery分頁插件
- Ajax分頁插件Pagination從前臺jQuery到后端java總結(jié)
- jQuery ajax分頁插件實例代碼
- 基于bootstrap3和jquery的分頁插件
- jQuery插件分享之分頁插件jqPagination
- jquery+css3打造一款ajax分頁插件(自寫)
- 使用JQuery實現(xiàn)的分頁插件分享
- jQuery實現(xiàn)的分頁插件完整示例
相關(guān)文章
基于jQuery.validate及Bootstrap的tooltip開發(fā)氣泡樣式的表單校驗組件思路詳解
這篇文章主要介紹了基于jQuery.validate及Bootstrap的tooltip開發(fā)氣泡樣式的表單校驗組件的相關(guān)資料,非常不錯,具有參考借鑒價值,感興趣的朋友一起看下吧2016-07-07
jQuery實現(xiàn)復(fù)選框成對選擇及對應(yīng)取消的方法
這篇文章主要介紹了jQuery實現(xiàn)復(fù)選框成對選擇及對應(yīng)取消的方法,實例分析了jQuery中change方法的使用技巧,需要的朋友可以參考下2015-03-03
jQuery彈出下拉列表插件(實現(xiàn)kindeditor的@功能)
這篇文章主要介紹了jQuery彈出下拉列表插件(實現(xiàn)kindeditor的@功能)的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-08-08

