js代码:
var pageNo=0;
var pageSize=0;var totalPages=0;
var totalResults=0;
function setPage(pageNo,pageSize,totalPages,totalResults){
pageNo = parseInt(pageNo);
pageSize = parseInt(pageSize);
totalPages = parseInt(totalPages);
totalResults = parseInt(totalResults);
this.pageNo=pageNo;
this.pageSize=pageSize;
this.totalPages=totalPages;
this.totalResults=totalResults;
var page= '<div class="a">';
if(totalPages==1)page+='<a href="javascript:void(0);" title="上一页"><</a>'
+'<a href="javascript:void(0);" class="current" οnclick="sub(1);">1</a>'
+'<a href="javascript:void(0);" title="下一页">></a>';
var totle=5;
if(totalPages>1){
if(pageNo>1)page+='<a href="javascript:void(0);" title="上一页" οnclick="sub('+(pageNo-1)+');"><</a>';
else if(pageNo==1)page+='<a href="javascript:void(0);" title="上一页"><</a>';
var content='';
var left='';
var leftlength=0;
var right='';
var rightlength=0;
var midle='';
for(var i=pageNo-Math.floor(totle/2);i<pageNo;i++){
if(i>0){
left+='<a href="javascript:void(0);" οnclick="sub('+i+');">'+i+'</a>';
leftlength++;
}
}
midle='<a href="javascript:void(0);" class="current" οnclick="sub('+pageNo+');" >'+pageNo+'</a>';
for(var i=pageNo+1;i<=pageNo+Math.floor(totle/2);i++){
if(i<=totalPages){
right+='<a href="javascript:void(0);" οnclick="sub('+i+');" >'+i+'</a>';
rightlength++;
}
}
if(leftlength+rightlength<totle-1){
if(pageNo-leftlength-1>0 || pageNo+rightlength<totalPages){
while(leftlength+rightlength<totle-1){
if(pageNo-leftlength-1>0){
leftlength++;
left='<a href="javascript:void(0);" οnclick="sub('+(pageNo-leftlength)+');" >'+(pageNo-leftlength)+'</a>'+left;
}else if(pageNo+rightlength<totalPages){
rightlength++;
right+='<a href="javascript:void(0);" οnclick="sub('+(pageNo+rightlength)+');" >'+(pageNo+rightlength)+'</a>';
}else break;
}
}
}
content=left+midle+right;
if(pageNo-leftlength-1>1) page+='<a href="javascript:void(0);" οnclick="sub(1);">1</a>...';
else if(pageNo-leftlength-1==1) page+='<a href="javascript:void(0);" οnclick="sub(1);">1</a>';
page+=content;
if(pageNo+rightlength<totalPages-1)page+='...<a href="javascript:void(0);" οnclick="sub('+totalPages+');">'+totalPages+'</a>';
else if(pageNo+rightlength==totalPages-1)page+='<a href="javascript:void(0);" οnclick="sub('+totalPages+');">'+totalPages+'</a>';
if(pageNo<totalPages)page+='<a href="javascript:void(0);" title="下一页" οnclick="sub('+(pageNo+1)+');">></a>';
else if(pageNo==totalPages)page+='<a href="javascript:void(0);" title="下一页">></a>';
}
page+=' <span>跳转到第<select id="pageNo" name="pageNo">';
for(var i=1;i<=totalPages;i++){
page+='<option value="'+i+'"';
if(pageNo==i)page+=' selected="selected"';
page+='>'+i+'</option>';
}
page+='</select> 页</span>';
page+=' <img style="cursor:pointer;" οnclick="ok();" src="image/queding.jpg" alt="" /></div>';
return page;
}
界面中调用sub(pageNo)函数;
function ok(){
sub($("pageNo").val());
}
java代码:
public static String setPage(Integer pageNo,Integer pageSize,Integer totalPages,Integer totalResults){
StringBuilder page= new StringBuilder("<div class=\"pager\"><div class=\"a\">");
if(totalPages==1){
page.append("<a href=\"javascript:void(0);\" title=\"上一页\">上一页</a> ");
page.append("<b>1</b> ");
page.append(" <a href=\"javascript:void(0);\" title=\"下一页\">下一页</a>");
}
int totle=5;
if(totalPages>1){
if(pageNo>1){
page.append("<a href=\"javascript:void(0);\" title=\"上一页\" οnclick=\"javascrpt:jumppage("+(pageNo-1)+");\">上一页</a> ");
}else if(pageNo==1){
page.append(" <a href=\"javascript:void(0);\" title=\"上一页\">上一页</a>");
}
StringBuilder content = new StringBuilder("");
StringBuilder left = new StringBuilder("");
int leftlength=0;
StringBuilder right = new StringBuilder("");
int rightlength=0;
StringBuilder midle = new StringBuilder("");
for(int i=pageNo-totle/2;i<pageNo;i++){
if(i>0){
left.append(" <a href=\"javascript:void(0);\" οnclick=\"javascrpt:jumppage("+i+");\">"+i+"</a> ");
leftlength++;
}
}
midle.append(" <b>"+pageNo+"</b> ");
for(int i=pageNo+1;i<=pageNo+totle/2;i++){
if(i<=totalPages){
right.append(" <a href=\"javascript:void(0);\" οnclick=\"javascrpt:jumppage("+i+");\">"+i+"</a> ");
rightlength++;
}
}
if(leftlength+rightlength < totle-1){
if(pageNo-leftlength-1>0 || pageNo+rightlength<totalPages){
while(leftlength+rightlength<totle-1){
if(pageNo-leftlength-1>0){
leftlength++;
left = new StringBuilder(" <a href=\"javascript:void(0);\" οnclick=\"javascrpt:jumppage("+(pageNo-leftlength)+");\">"+(pageNo-leftlength)+"</a> ").append(left);
}else if(pageNo+rightlength<totalPages){
rightlength++;
right.append(" <a href=\"javascript:void(0);\" οnclick=\"javascrpt:jumppage("+(pageNo+rightlength)+");\">"+(pageNo+rightlength)+"</a> ");
}else break;
}
}
}
content.append(left.toString()).append(midle.toString()).append(right.toString());
if(pageNo-leftlength-1 > 1){
page.append(" <a href=\"javascript:void(0);\" οnclick=\"javascrpt:jumppage(1);\">"+1+"</a><span>...</span>");
}
else if(pageNo-leftlength-1 == 1) {
page.append(" <a href=\"javascript:void(0);\" οnclick=\"javascrpt:jumppage(1);\">"+1+"</a> ");
}
page.append(content);
if(pageNo+rightlength < totalPages-1){
page.append("<span>...</span><a href=\"javascript:void(0);\" οnclick=\"javascrpt:jumppage("+totalPages+");\">"+totalPages+"</a> ");
}
else if(pageNo+rightlength == totalPages-1){
page.append(" <a href=\"javascript:void(0);\" οnclick=\"javascrpt:jumppage("+totalPages+");\">"+totalPages+"</a> ");
}
if(pageNo<totalPages){
page.append(" <a href=\"javascript:void(0);\" title=\"下一页\" οnclick=\"javascrpt:jumppage("+(pageNo+1)+");\">下一页</a> ");
}
else if(pageNo==totalPages){
page.append(" <a href=\"javascript:void(0);\" title=\"下一页\">下一页</a> ");;
}
}
page.append("</div></div>");;
return page.toString();
}
界面中调用jumppage(pageNo)函数;