后台代码
public static int[] getStep(int count,int size,int index){ //总页数,每页条数,选中是哪一页
int a=size/2; //获取中间位置
if(index<=a){
return new int[]{1, size};
}
else if(index>=(count-a)){
return new int[]{count-size+1,count};
}
else{
return new int[]{index-a,index+a};
}
}
前台显示页面代码
<%
int count = 20;
int size = 5;
int index = request.getParameter("index")==null?1:Integer.parseInt(request.getParameter("index"));
int[] step = FenYe.getStep(count, size, index);
for(int i=step[0]; i<=step[1]; i++) {
if (i==index) {
out.println(i);
}else {
out.println("<a href='fenYe.jsp?index="+i+"'>"+i+"</a>");
}
}
%>