您的位置:首页 > Web前端 > JavaScript

js上一页/下一页真分页的页码生成

2015-08-24 16:17 519 查看
//传入“当前页码 每页容量 数据总条数”
//返回按钮上的文本内容,如:pageBtns(2,10,75) 返回:"上一页,1,2,3,4,...,8,下一页" 以逗号分隔的字符串
function pageBtns(currentPageIndex,currentPageSize,dataCount){
var cpIndex=parseInt(currentPageIndex);
var pageSize=parseInt(currentPageSize);
var count=parseInt(dataCount);
var btnStr="";
var pages=(count % pageSize)==0 ? (count/pageSize):Math.floor((count/pageSize+1));//总页数
if(pages<=6){//如果小于6页 则显示全部页码按钮
for(var i=1;i<=pages;i++){
btnStr+=i+",";
}
}
else{ //大于等于7页
var a=[];
if(cpIndex !=1)//位置0
{
a[0]="上一页";
}
else{
a[0]="";
}

a[1]="1"; //位置1 首页

if((cpIndex-2)>2){//位置2
a[2]="...";
}
else{
a[2]="";
}

if((cpIndex-2)>=2)//位置3
{
a[3]=cpIndex-2;
}
else{
a[3]="";
}

if((cpIndex-1)>=2)//位置4
{
a[4]=cpIndex-1;
}
else{
a[4]="";
}

//位置5
if(cpIndex!=1 && cpIndex!=pages){
a[5]=cpIndex;
}
else{
a[5]="";
}

//位置6
if((cpIndex+1)<pages)
{
a[6]=cpIndex+1;
}else{
a[6]="";
}

//位置7
if((cpIndex+2)<pages)
{
a[7]=cpIndex+2;
}
else{
a[7]="";
}

//位置8
if((cpIndex+2+1)<pages){
a[8]="...";
}
else{
a[8]="";
}

//位置9
a[9]=pages;

//位置10
if(cpIndex!=pages){
a[10]="下一页";
}
else{
a[10]="";
}

$.each(a,function(j){
if(a[j]!="")
{
btnStr+=a[j]+",";
}
});
}
btnStr=btnStr.substring(0,btnStr.length-1);
console.log(btnStr);
return btnStr;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: