Files
simrs-jatim/js/plugins/jquery.pagination.js
2024-04-19 14:04:41 +07:00

176 lines
6.0 KiB
JavaScript

/**
* jQuery EasyUI 1.2.5
*
* Licensed under the GPL terms
* To use it on other terms please contact us
*
* Copyright(c) 2009-2011 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++){
var _5=$("<option></option>").text(_3.pageList[i]).appendTo(ps);
if(_3.pageList[i]==_3.pageSize){
_5.attr("selected","selected");
}
}
$("<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 _6=_3.buttons[i];
if(_6=="-"){
$("<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(_6.text||"").attr("icon",_6.iconCls||"").bind("click",eval(_6.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){
_b(_2,1);
}
});
_4.find("a[icon=pagination-prev]").unbind(".pagination").bind("click.pagination",function(){
if(_3.pageNumber>1){
_b(_2,_3.pageNumber-1);
}
});
_4.find("a[icon=pagination-next]").unbind(".pagination").bind("click.pagination",function(){
var _7=Math.ceil(_3.total/_3.pageSize);
if(_3.pageNumber<_7){
_b(_2,_3.pageNumber+1);
}
});
_4.find("a[icon=pagination-last]").unbind(".pagination").bind("click.pagination",function(){
var _8=Math.ceil(_3.total/_3.pageSize);
if(_3.pageNumber<_8){
_b(_2,_8);
}
});
_4.find("a[icon=pagination-load]").unbind(".pagination").bind("click.pagination",function(){
if(_3.onBeforeRefresh.call(_2,_3.pageNumber,_3.pageSize)!=false){
_b(_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 _9=parseInt($(this).val())||1;
_b(_2,_9);
}
});
_4.find(".pagination-page-list").unbind(".pagination").bind("change.pagination",function(){
_3.pageSize=$(this).val();
_3.onChangePageSize.call(_2,_3.pageSize);
var _a=Math.ceil(_3.total/_3.pageSize);
_b(_2,_3.pageNumber);
});
};
function _b(_c,_d){
var _e=$.data(_c,"pagination").options;
var _f=Math.ceil(_e.total/_e.pageSize)||1;
var _10=_d;
if(_d<1){
_10=1;
}
if(_d>_f){
_10=_f;
}
_e.pageNumber=_10;
_e.onSelectPage.call(_c,_10,_e.pageSize);
_11(_c);
};
function _11(_12){
var _13=$.data(_12,"pagination").options;
var _14=Math.ceil(_13.total/_13.pageSize)||1;
var num=$(_12).find("input.pagination-num");
num.val(_13.pageNumber);
num.parent().next().find("span").html(_13.afterPageText.replace(/{pages}/,_14));
var _15=_13.displayMsg;
_15=_15.replace(/{from}/,_13.pageSize*(_13.pageNumber-1)+1);
_15=_15.replace(/{to}/,Math.min(_13.pageSize*(_13.pageNumber),_13.total));
_15=_15.replace(/{total}/,_13.total);
$(_12).find(".pagination-info").html(_15);
$("a[icon=pagination-first],a[icon=pagination-prev]",_12).linkbutton({disabled:(_13.pageNumber==1)});
$("a[icon=pagination-next],a[icon=pagination-last]",_12).linkbutton({disabled:(_13.pageNumber==_14)});
if(_13.loading){
$(_12).find("a[icon=pagination-load]").find(".pagination-load").addClass("pagination-loading");
}else{
$(_12).find("a[icon=pagination-load]").find(".pagination-load").removeClass("pagination-loading");
}
};
function _16(_17,_18){
var _19=$.data(_17,"pagination").options;
_19.loading=_18;
if(_19.loading){
$(_17).find("a[icon=pagination-load]").find(".pagination-load").addClass("pagination-loading");
}else{
$(_17).find("a[icon=pagination-load]").find(".pagination-load").removeClass("pagination-loading");
}
};
$.fn.pagination=function(_1a,_1b){
if(typeof _1a=="string"){
return $.fn.pagination.methods[_1a](this,_1b);
}
_1a=_1a||{};
return this.each(function(){
var _1c;
var _1d=$.data(this,"pagination");
if(_1d){
_1c=$.extend(_1d.options,_1a);
}else{
_1c=$.extend({},$.fn.pagination.defaults,_1a);
$.data(this,"pagination",{options:_1c});
}
_1(this);
_11(this);
});
};
$.fn.pagination.methods={options:function(jq){
return $.data(jq[0],"pagination").options;
},loading:function(jq){
return jq.each(function(){
_16(this,true);
});
},loaded:function(jq){
return jq.each(function(){
_16(this,false);
});
}};
$.fn.pagination.defaults={total:1,pageSize:10,pageNumber:1,pageList:[10,20,30,50],loading:false,buttons:null,showPageList:true,showRefresh:true,onSelectPage:function(_1e,_1f){
},onBeforeRefresh:function(_20,_21){
},onRefresh:function(_22,_23){
},onChangePageSize:function(_24){
},beforePageText:"Page",afterPageText:"of {pages}",displayMsg:"Displaying {from} to {to} of {total} items"};
})(jQuery);