function calculateTotalPage(totalCount, recPerPage) {
return (totalCount % recPerPage == 0) ? (Math.floor(totalCount / recPerPage)) : (Math.floor((totalCount / recPerPage)) + 1);
}
function getUrlStr(linkType, linkUrl, pageInt) {
if (linkType == 'js') {
return linkUrl.replace('{page}', pageInt);
} else {
return linkUrl + 'page=' + pageInt;
}
}
function showPage(page, size, total, linkUrl) {
var linkType = 'url';
if (linkUrl.indexOf('javascript:') >= 0) {
linkType = 'js';
} else {
if (linkUrl.indexOf('?') == -1) {
linkUrl += '?';
} else {
linkUrl += '&';
}
}
var pageNoL = page;
var totalCountL = total;
var recPerPageL = size;
var totalPage = calculateTotalPage(totalCountL, recPerPageL);
var dispNum = 7;
var aroundNum = 3;
var centerNum = 5;
if (pageNoL > totalPage)
pageNoL = totalPage;
if (pageNoL < 1)
pageNoL = 1;
if (totalPage < 1)
totalPage = 1;
var beginPage = 1;
var endPage = totalPage;
var pageHtml = '';
//if (pageNoL > 1 && pageNoL <= totalPage) {
pageHtml += '';
//pageHtml += '';
// }
// else {
// pageHtml += ' ';
// //pageHtml += '';
// }
if (pageNoL > (centerNum - 1) && totalPage > dispNum) {
pageHtml += '1';
}
if (pageNoL > centerNum && totalPage > (dispNum + 1)) {
pageHtml += '...';
}
if (totalPage == 0) {
endPage = 1;
}
if (totalPage > 6) {
// 前5页中
if (pageNoL < centerNum) {
endPage = dispNum
} else if (pageNoL > (totalPage - 4)) {// 后5页
beginPage = totalPage - (dispNum - 1);
} else {
beginPage = pageNoL - aroundNum;
endPage = pageNoL + aroundNum;
}
}
for (var i = beginPage; i <= endPage; i++) {
if (i == pageNoL) {
pageHtml += '' + i + '';
} else {
pageHtml += '' + i + '';
}
}
// 最终页
if ((totalPage - pageNoL) >= (centerNum + 1) && totalPage > (dispNum + 2)) {
pageHtml += '...';
}
if ((totalPage - pageNoL) >= centerNum && totalPage > (dispNum + 1)) {
pageHtml += '' + (totalPage - 1) + '';
}
if ((totalPage - pageNoL) >= (centerNum - 1) && totalPage > dispNum) {
pageHtml += '' + totalPage + '';
}
//if (totalPage > 1 && pageNoL < totalPage) {
//pageHtml += '';
pageHtml += '';
// } else {
// //pageHtml += '';
// pageHtml += ' ';
// }
// alert(pageHtml);
$(".fit_page").html(pageHtml);
}