;
$(function() {
var method = null;
var maxpage = null;
var pagesize = 10;
var shownum = 10;
/*
* 动态分页控件
* queryMethod 为页面的查询方法,此方法必须要接收两个参数 page,pageSize 如method(page,pageSize);
*/
jQuery.solrpagination = function(solrBook, callMethod) {
method = callMethod;
var total = solrBook.foundnum;
var currentpage = solrBook.page;
pagesize = solrBook.pagesize;
var totalpage = (total % pagesize == 0 ? total / pagesize : parseInt(total / pagesize) + 1);
maxpage = totalpage;
$(".paging-box .num").html("共计:" + total + "条" + "/" + totalpage + "页");
var pageHtml = "";
if (currentpage > 1) {
pageHtml += "上一页";
$(".box-code-jump").show();
}else{
pageHtml += "上一页";
$(".box-code-jump").hide();
}
/* 小于10页 不加省略号*/
if (totalpage < (shownum + 2)) {
for (var i = 0; i < totalpage; i++) {
if ((i + 1) == currentpage) {
pageHtml += "" + (i + 1) + "";
} else {
pageHtml += "" + (i + 1) + "";
}
}
} else {
var curshownum = 0;
for (var i = 0; i < totalpage; i++) {
if (currentpage <= (shownum - 3)) {
if ((i + 1) == currentpage) {
pageHtml += "" + (i + 1) + "";
} else {
pageHtml += "" + (i + 1) + "";
if ((i + 1) == shownum) {
pageHtml += "...";
i = totalpage - 2;
}
}
}else if (currentpage >= (totalpage - shownum + 3)) {
if ((i + 1) == currentpage) {
pageHtml += "" + (i + 1) + "";
} else {
pageHtml += "" + (i + 1) + "";
if ((i + 1) == 2) {
pageHtml += "...";
i = totalpage - shownum;
}
}
}else {
if(curshownum <= shownum){
if ((i + 1) == currentpage) {
pageHtml += "" + (i + 1) + "";
curshownum +=1;
} else {
pageHtml += "" + (i + 1) + "";
if ((i + 1) == 2) {
pageHtml += "...";
i = currentpage - 4;
}
if ((i + 1) == currentpage + 2) {
pageHtml += "...";
i = totalpage - 2;
}
curshownum +=1;
}
}else{
if(i == (totalpage - 2)){
pageHtml += "...";
pageHtml += "" + totalpage + "";
}
}
}
}
}
if (currentpage < totalpage) {
$(".box-code-jump").show();
pageHtml += "下一页";
}else{
pageHtml += "下一页";
}
$(".paging-box-code div").html(pageHtml);
/*点击上一页*/
$(".paging-box-code .prevPage").on("click", function() {
var prevpage = parseInt($(".paging-box-code .current").html()) - 1;
if (prevpage >= 1) {
var func = eval(method);
new func(prevpage,pagesize);
}
return false;
});
/*点击下一页*/
$(".paging-box-code .nextPage").on("click", function() {
var nextpage = parseInt($(".paging-box-code .current").html()) + 1;
if (nextpage <= maxpage) {
var func = eval(method);
new func(nextpage,pagesize);
}
return false;
});
/*点击某一页*/
$(".paging-box-code .tcdNumber").on("click",function(){
var clickpage = parseInt($(this).html());
if (clickpage >=1 && clickpage <= maxpage) {
var func = eval(method);
new func(clickpage,pagesize);
}
return false;
});
/*点击...事件 */
$(".paging-box-code .predoc").on("click",function(){
var page = parseInt($(this).next().html()) - 8;
if (page >=1 && page <= maxpage) {
var func = eval(method);
new func(page,pagesize);
}
return false;
});
/*点击...事件 */
$(".paging-box-code .sufdoc").on("click",function(){
var page = parseInt($(this).prev().html()) + 4;
if (page >=1 && page <= maxpage) {
var func = eval(method);
new func(page,pagesize);
}
return false;
});
/* 跳转到某一页*/
$(".paging-box-code .turn").off("click").on("click",function(){
var turnpage = $(".paging-box-code input").val();
if(turnpage==null || $.trim(turnpage)=="" || isNaN(turnpage)){
return;
}else{
var num = parseInt(turnpage);
if(num>maxpage){
num = maxpage;
}
if(num<1){
num = 1;
}
$(".paging-box-code input").val(num);
var func = eval(method);
new func(num,pagesize);
}
return false;
});
/* 回车按键响应 */
$(".paging-box-code input").off("keydown").on("keydown",function(e){
if(e.keyCode==13){
$(".paging-box-code .turn").trigger("click");
}
});
};
});