最近網上看到乙個jquery的乙個分頁外掛程式,個人感覺,外掛程式這些東西,用起來不一定附和自己的風格,所以就在這個外掛程式基礎上改寫了一下,按照自己興趣做了一下修改;修改後的外掛程式(嚴格說不規範的外掛程式),使用起來會比較簡單,只需要幾步就可以完成整個分頁操作:
1、匯入jquery.js檔案和分頁外掛程式檔案;
2、頁面中必須有乙個
作為存放分頁控制項的層。同時又乙個層用於作為呈現,這個div的id可以
隨便取,不過為了不會與別的頁面控制項id一樣,可以盡量取有意義的id值;
3、在ready方法中新增**,paging(handleurl, showfield, shownamefield, containerid, pagesize, itemsize)來初始化頁面;
其中:handleurl: 處理分頁資料的url,可以帶引數。
showfield: 顯示的字段,寫*號表示所有欄位都顯示,各個欄位間用逗號,分開。如:showfield="id,name,department";
shownamefield:顯示的每個欄位頭的名稱,在顯示所有欄位的情況下,這個頭只顯示欄位名;格式與showfield對應,如:
shownamefield="id,名稱,部門";
containerid:呈現資料的div的id值
pagesize:初始化每頁顯示大小
itemsize:初始化每頁顯示控制項頁碼的數量。
該控制項handlerurl的處理後返回是json物件資料,格式如下:
,]}資料庫訪問層可以使用儲存過程返回資料集,並返回記錄數,以便構造json資料時候可以設定recordcount。
效果如下:
外掛程式**:jquery.pagination.js
+ expand sourceview plaincopy to clipboardprint?
var _pagesize = 10; //每頁顯示數量
var _itemsize = 10; //按鍵數量
var _currentpage = 1;
var _recordcount = 0;
var _showfield = "";
var _shownamefield = "";
var _containerid = "";
var _handlerurl = "";
paging = function(handleurl, showfield, shownamefield, containerid, pagesize, itemsize)
}
if (flag == true)
};
geturl = function()
getdata = function() , //成功時候呼叫另外乙個函式
showfieldinpage(data); //呼叫顯示field函式
/*
for (var i in data)
} */
}
showfieldinpage = function(data)
html += "";
for (var i in data)
html += "";
}
html += "";
//alert(html);
$("#" + _containerid).html(html);
$("#" + _containerid).find("table").find("tr.listdataclass:odd").each(function() );
}
$.fn.pagination = function(totalproperty, currpage, opts)
}, opts || {});
var pages = new array();
var synchronization = function(page)
}
return this.each(function()
function selectpage(page) else
}
}
}
function createitems(itemsize, beginnum, pagenums)
for (var i = 0; i < size; i++) else
}if (flag == true)
};geturl = function()
getdata = function() , //成功時候呼叫另外乙個函式
showfieldinpage(data); //呼叫顯示field函式
/*for (var i in data) }*/
}showfieldinpage = function(data)
html += "";
for (var i in data)
html += "";
}html += "";
//alert(html);
$("#" + _containerid).html(html);
$("#" + _containerid).find("table").find("tr.listdataclass:odd").each(function() );
}$.fn.pagination = function(totalproperty, currpage, opts)
}, opts || {});
var pages = new array();
var synchronization = function(page)
}return this.each(function()
function selectpage(page) else }}
}function createitems(itemsize, beginnum, pagenums)
for (var i = 0; i < size; i++) else
}return html;
}function countbeginnum(pagenums, currpage) else if (currpage > opts.itemsize / 2)
return beginnum;
}return 1;
}function render()
var html = ''
+ ''
+ ''
+ itemshtml
+ ''
+ ''
+ '共' + pagenums + '頁 ' + totalproperty + '條記錄'
+ '';
$('a', panel).each(
function() );
}var panel = $(this);
panel.synchronization = function(page)
render();
pages[pages.length] = panel;
});}
測試頁面:demo.htm
改寫Jquery的乙個分頁外掛程式
最近網上看到乙個jquery的乙個分頁外掛程式,個人感覺,外掛程式這些東西,用起來不一定附和自己的風格,所以就在這個外掛程式基礎上改寫了一下,按照自己興趣做了一下修改 修改後的外掛程式 嚴格說不規範的外掛程式 使用起來會比較簡單,只需要幾步就可以完成整個分頁操作 1 匯入jquery.js檔案和分頁...
寫乙個Jquery字型外掛程式
在製作專案的過程中,為了給登入使用者提醒功能,需要將當前的提示資訊字型顏色變換幾次,以達到引起使用者注意的目的.具體做法就是當滑鼠移動過提醒資訊的時候,當前的字型顏色能夠每隔50ms變換一次.非plugin版本的製作方法 初次接觸到這個需求的時候,很多人都想到利用settimeout來做,我也不例外...
如何開發乙個Jquery外掛程式?
最近有離職的想法,可這不是重點,重點是很多面試官都會問的乙個問題就是 怎麼開發乙個jquery外掛程式。其實,如果是在真實的工作中遇到這種情況,我會直接找乙個簡單的jquery外掛程式,例如jquery.cookie.js或者jquery.textchange.js外掛程式,jquery的外掛程式那...