173 lines
5.9 KiB
JavaScript
173 lines
5.9 KiB
JavaScript
|
|
/**
|
|||
|
|
* jQuery EasyUI 1.1.2
|
|||
|
|
*
|
|||
|
|
* Licensed under the GPL:
|
|||
|
|
* http://www.gnu.org/licenses/gpl.txt
|
|||
|
|
*
|
|||
|
|
* Copyright 2010 stworthy [ stworthy@gmail.com ]
|
|||
|
|
*
|
|||
|
|
*/
|
|||
|
|
(function($){
|
|||
|
|
function _1(_2){
|
|||
|
|
var _3=$.data(_2,"pagination").options;
|
|||
|
|
var _4=$(_2).addClass("pagination").empty();
|
|||
|
|
var t=$("<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\"><tr></tr></table>").appendTo(_4);
|
|||
|
|
var tr=$("tr",t);
|
|||
|
|
if(_3.showPageList){
|
|||
|
|
var ps=$("<select class=\"pagination-page-list\"></select>");
|
|||
|
|
for(var i=0;i<_3.pageList.length;i++){
|
|||
|
|
$("<option></option>").text(_3.pageList[i]).attr("selected",_3.pageList[i]==_3.pageSize?"selected":"").appendTo(ps);
|
|||
|
|
}
|
|||
|
|
$("<td></td>").append(ps).appendTo(tr);
|
|||
|
|
_3.pageSize=parseInt(ps.val());
|
|||
|
|
$("<td><div class=\"pagination-btn-separator\"></div></td>").appendTo(tr);
|
|||
|
|
}
|
|||
|
|
$("<td><a href=\"javascript:void(0)\" icon=\"pagination-first\"></a></td>").appendTo(tr);
|
|||
|
|
$("<td><a href=\"javascript:void(0)\" icon=\"pagination-prev\"></a></td>").appendTo(tr);
|
|||
|
|
$("<td><div class=\"pagination-btn-separator\"></div></td>").appendTo(tr);
|
|||
|
|
$("<span style=\"padding-left:6px;\"></span>").html(_3.beforePageText).wrap("<td></td>").parent().appendTo(tr);
|
|||
|
|
$("<td><input class=\"pagination-num\" type=\"text\" value=\"1\" size=\"2\"></td>").appendTo(tr);
|
|||
|
|
$("<span style=\"padding-right:6px;\"></span>").wrap("<td></td>").parent().appendTo(tr);
|
|||
|
|
$("<td><div class=\"pagination-btn-separator\"></div></td>").appendTo(tr);
|
|||
|
|
$("<td><a href=\"javascript:void(0)\" icon=\"pagination-next\"></a></td>").appendTo(tr);
|
|||
|
|
$("<td><a href=\"javascript:void(0)\" icon=\"pagination-last\"></a></td>").appendTo(tr);
|
|||
|
|
if(_3.showRefresh){
|
|||
|
|
$("<td><div class=\"pagination-btn-separator\"></div></td>").appendTo(tr);
|
|||
|
|
$("<td><a href=\"javascript:void(0)\" icon=\"pagination-load\"></a></td>").appendTo(tr);
|
|||
|
|
}
|
|||
|
|
if(_3.buttons){
|
|||
|
|
$("<td><div class=\"pagination-btn-separator\"></div></td>").appendTo(tr);
|
|||
|
|
for(var i=0;i<_3.buttons.length;i++){
|
|||
|
|
var _5=_3.buttons[i];
|
|||
|
|
if(_5=="-"){
|
|||
|
|
$("<td><div class=\"pagination-btn-separator\"></div></td>").appendTo(tr);
|
|||
|
|
}else{
|
|||
|
|
var td=$("<td></td>").appendTo(tr);
|
|||
|
|
$("<a href=\"javascript:void(0)\"></a>").addClass("l-btn").css("float","left").text(_5.text||"").attr("icon",_5.iconCls||"").bind("click",eval(_5.handler||function(){
|
|||
|
|
})).appendTo(td).linkbutton({plain:true});
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
$("<div class=\"pagination-info\"></div>").appendTo(_4);
|
|||
|
|
$("<div style=\"clear:both;\"></div>").appendTo(_4);
|
|||
|
|
$("a[icon^=pagination]",_4).linkbutton({plain:true});
|
|||
|
|
_4.find("a[icon=pagination-first]").unbind(".pagination").bind("click.pagination",function(){
|
|||
|
|
if(_3.pageNumber>1){
|
|||
|
|
_a(_2,1);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
_4.find("a[icon=pagination-prev]").unbind(".pagination").bind("click.pagination",function(){
|
|||
|
|
if(_3.pageNumber>1){
|
|||
|
|
_a(_2,_3.pageNumber-1);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
_4.find("a[icon=pagination-next]").unbind(".pagination").bind("click.pagination",function(){
|
|||
|
|
var _6=Math.ceil(_3.total/_3.pageSize);
|
|||
|
|
if(_3.pageNumber<_6){
|
|||
|
|
_a(_2,_3.pageNumber+1);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
_4.find("a[icon=pagination-last]").unbind(".pagination").bind("click.pagination",function(){
|
|||
|
|
var _7=Math.ceil(_3.total/_3.pageSize);
|
|||
|
|
if(_3.pageNumber<_7){
|
|||
|
|
_a(_2,_7);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
_4.find("a[icon=pagination-load]").unbind(".pagination").bind("click.pagination",function(){
|
|||
|
|
if(_3.onBeforeRefresh.call(_2,_3.pageNumber,_3.pageSize)!=false){
|
|||
|
|
_a(_2,_3.pageNumber);
|
|||
|
|
_3.onRefresh.call(_2,_3.pageNumber,_3.pageSize);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
_4.find("input.pagination-num").unbind(".pagination").bind("keydown.pagination",function(e){
|
|||
|
|
if(e.keyCode==13){
|
|||
|
|
var _8=parseInt($(this).val())||1;
|
|||
|
|
_a(_2,_8);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
_4.find(".pagination-page-list").unbind(".pagination").bind("change.pagination",function(){
|
|||
|
|
_3.pageSize=$(this).val();
|
|||
|
|
_3.onChangePageSize.call(_2,_3.pageSize);
|
|||
|
|
var _9=Math.ceil(_3.total/_3.pageSize);
|
|||
|
|
_a(_2,_3.pageNumber);
|
|||
|
|
});
|
|||
|
|
};
|
|||
|
|
function _a(_b,_c){
|
|||
|
|
var _d=$.data(_b,"pagination").options;
|
|||
|
|
var _e=Math.ceil(_d.total/_d.pageSize);
|
|||
|
|
var _f=_c;
|
|||
|
|
if(_c<1){
|
|||
|
|
_f=1;
|
|||
|
|
}
|
|||
|
|
if(_c>_e){
|
|||
|
|
_f=_e;
|
|||
|
|
}
|
|||
|
|
_d.onSelectPage.call(_b,_f,_d.pageSize);
|
|||
|
|
_d.pageNumber=_f;
|
|||
|
|
_10(_b);
|
|||
|
|
};
|
|||
|
|
function _10(_11){
|
|||
|
|
var _12=$.data(_11,"pagination").options;
|
|||
|
|
var _13=Math.ceil(_12.total/_12.pageSize);
|
|||
|
|
var num=$(_11).find("input.pagination-num");
|
|||
|
|
num.val(_12.pageNumber);
|
|||
|
|
num.parent().next().find("span").html(_12.afterPageText.replace(/{pages}/,_13));
|
|||
|
|
var _14=_12.displayMsg;
|
|||
|
|
_14=_14.replace(/{from}/,_12.pageSize*(_12.pageNumber-1)+1);
|
|||
|
|
_14=_14.replace(/{to}/,Math.min(_12.pageSize*(_12.pageNumber),_12.total));
|
|||
|
|
_14=_14.replace(/{total}/,_12.total);
|
|||
|
|
$(_11).find(".pagination-info").html(_14);
|
|||
|
|
$("a[icon=pagination-first],a[icon=pagination-prev]",_11).linkbutton({disabled:(_12.pageNumber==1)});
|
|||
|
|
$("a[icon=pagination-next],a[icon=pagination-last]",_11).linkbutton({disabled:(_12.pageNumber==_13)});
|
|||
|
|
if(_12.loading){
|
|||
|
|
$(_11).find("a[icon=pagination-load]").find(".pagination-load").addClass("pagination-loading");
|
|||
|
|
}else{
|
|||
|
|
$(_11).find("a[icon=pagination-load]").find(".pagination-load").removeClass("pagination-loading");
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
function _15(_16,_17){
|
|||
|
|
var _18=$.data(_16,"pagination").options;
|
|||
|
|
_18.loading=_17;
|
|||
|
|
if(_18.loading){
|
|||
|
|
$(_16).find("a[icon=pagination-load]").find(".pagination-load").addClass("pagination-loading");
|
|||
|
|
}else{
|
|||
|
|
$(_16).find("a[icon=pagination-load]").find(".pagination-load").removeClass("pagination-loading");
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
$.fn.pagination=function(_19){
|
|||
|
|
if(typeof _19=="string"){
|
|||
|
|
switch(_19){
|
|||
|
|
case "options":
|
|||
|
|
return $.data(this[0],"pagination").options;
|
|||
|
|
case "loading":
|
|||
|
|
return this.each(function(){
|
|||
|
|
_15(this,true);
|
|||
|
|
});
|
|||
|
|
case "loaded":
|
|||
|
|
return this.each(function(){
|
|||
|
|
_15(this,false);
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
_19=_19||{};
|
|||
|
|
return this.each(function(){
|
|||
|
|
var _1a;
|
|||
|
|
var _1b=$.data(this,"pagination");
|
|||
|
|
if(_1b){
|
|||
|
|
_1a=$.extend(_1b.options,_19);
|
|||
|
|
}else{
|
|||
|
|
_1a=$.extend({},$.fn.pagination.defaults,_19);
|
|||
|
|
$.data(this,"pagination",{options:_1a});
|
|||
|
|
}
|
|||
|
|
_1(this);
|
|||
|
|
_10(this);
|
|||
|
|
});
|
|||
|
|
};
|
|||
|
|
$.fn.pagination.defaults={total:1,pageSize:10,pageNumber:1,pageList:[10,20,30,50],loading:false,buttons:null,showPageList:true,showRefresh:true,onSelectPage:function(_1c,_1d){
|
|||
|
|
},onBeforeRefresh:function(_1e,_1f){
|
|||
|
|
},onRefresh:function(_20,_21){
|
|||
|
|
},onChangePageSize:function(_22){
|
|||
|
|
},beforePageText:"Page",afterPageText:"of {pages}",displayMsg:"Displaying {from} to {to} of {total} items"};
|
|||
|
|
})(jQuery);
|
|||
|
|
|