改寫Jquery的乙個分頁外掛程式

2021-05-02 03:17:22 字數 4655 閱讀 9568

最近網上看到乙個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的外掛程式那...