自己写的一个JavaScript的分页函数,这个是第一个样式。
<
meta
http-equiv
="Content-Type"
content
="text/html; charset=utf-8"
/>
< strong > 分页: </ strong >< br />< br />
< script language ="javascript" > ...
/**//*
* 函数:Pagination(RCount,PageSize,CurPage,QString)
* 说明:计算分页信息
< strong > 分页: </ strong >< br />< br />
< script language ="javascript" > ...
/**//*
* 函数:Pagination(RCount,PageSize,CurPage,QString)
* 说明:计算分页信息
* 作者:lg970044
* 输入:
* @参数 {Number}RCount 总的记录个数
* @参数 {Number}PageSize 页面的最大记录个数
* @参数 {Number}CurPage 当前页数
* @参数 {String}QString 链接的查询字符串
* #参数 {String}RUnit 记录的单位
* 输出:
* @参数 {String}PaginationString 包含分页信息的字符串
*/
function Pagination(RCount,PageSize,CurPage,QString)...{
//默认参数RUnit(记录的单位)设为 "个"
var RUnit=arguments[4]?arguments[4]:"个";
var PaginationString="";
var PCount;
//取得当前页数
if (CurPage=="" || CurPage==0 || CurPage==null)...{CurPage=1;}
//对查询字符串进行补充
if (QString=="?")...{QString="";}
if (QString.indexOf("?")==-1)...{QString+="?";}else...{QString+="&";}
RCount=parseInt(RCount);
PageSize=parseInt(PageSize);
CurPage=parseInt(CurPage);
//计算出总页数
if (RCount%PageSize==0)...{
PCount=parseInt(RCount/PageSize);
}else...{
PCount=parseInt(RCount/PageSize)+1
}
//当传递的当前页数比总页数大时,使当前页数等于总页数
if (CurPage>PCount)...{CurPage=PCount;}
//组成分页信息的字符串
PaginationString+="共<strong>"+PCount+"</strong>"+RUnit+" ";
if (CurPage<2)
...{
PaginationString+="首页 上一页 ";
}else...{
PaginationString+="<a href='"+QString+"page=1'>首页</a> <a href='"+QString+"page="+(CurPage-1)+"'>上一页</a> ";
}
if (PCount-CurPage<1)
...{
PaginationString+="下一页 尾页";
}else...{
PaginationString+="<a href='"+QString+"page="+(CurPage+1)+"'>下一页</a> <a href='"+QString+"page="+PCount+"'>尾页</a>";
}
PaginationString+=" 页次:<strong style='color:red'>"+CurPage+"</strong>/<strong>"+PCount+"</strong>页 <strong>"+PageSize+"</strong>"+RUnit+"/页 ";
PaginationString+="转到:<select οnchange="javascript:window.location='"+QString+"page='+this.options[this.selectedIndex].value;">";
for (var i=1;i<=PCount;i++)
...{
if (i==CurPage)
...{
PaginationString+="<option value='"+i+"' selected>第"+i+"页</option>";
}else...{
PaginationString+="<option value='"+i+"'>第"+i+"页</option>";
}
}
PaginationString+="</select>";
return PaginationString;
}
</ script >
示例1:
< script language = "JavaScript" > ...
document.write(Pagination(365,20,9,""));
</ script >
< br />< br />
示例2:
< script language = "JavaScript" > ...
document.write(Pagination(105,20,1,"?id=110","篇"));
</ script >
< br />< br />
* 输入:
* @参数 {Number}RCount 总的记录个数
* @参数 {Number}PageSize 页面的最大记录个数
* @参数 {Number}CurPage 当前页数
* @参数 {String}QString 链接的查询字符串
* #参数 {String}RUnit 记录的单位
* 输出:
* @参数 {String}PaginationString 包含分页信息的字符串
*/
function Pagination(RCount,PageSize,CurPage,QString)...{
//默认参数RUnit(记录的单位)设为 "个"
var RUnit=arguments[4]?arguments[4]:"个";
var PaginationString="";
var PCount;
//取得当前页数
if (CurPage=="" || CurPage==0 || CurPage==null)...{CurPage=1;}
//对查询字符串进行补充
if (QString=="?")...{QString="";}
if (QString.indexOf("?")==-1)...{QString+="?";}else...{QString+="&";}
RCount=parseInt(RCount);
PageSize=parseInt(PageSize);
CurPage=parseInt(CurPage);
//计算出总页数
if (RCount%PageSize==0)...{
PCount=parseInt(RCount/PageSize);
}else...{
PCount=parseInt(RCount/PageSize)+1
}
//当传递的当前页数比总页数大时,使当前页数等于总页数
if (CurPage>PCount)...{CurPage=PCount;}
//组成分页信息的字符串
PaginationString+="共<strong>"+PCount+"</strong>"+RUnit+" ";
if (CurPage<2)
...{
PaginationString+="首页 上一页 ";
}else...{
PaginationString+="<a href='"+QString+"page=1'>首页</a> <a href='"+QString+"page="+(CurPage-1)+"'>上一页</a> ";
}
if (PCount-CurPage<1)
...{
PaginationString+="下一页 尾页";
}else...{
PaginationString+="<a href='"+QString+"page="+(CurPage+1)+"'>下一页</a> <a href='"+QString+"page="+PCount+"'>尾页</a>";
}
PaginationString+=" 页次:<strong style='color:red'>"+CurPage+"</strong>/<strong>"+PCount+"</strong>页 <strong>"+PageSize+"</strong>"+RUnit+"/页 ";
PaginationString+="转到:<select οnchange="javascript:window.location='"+QString+"page='+this.options[this.selectedIndex].value;">";
for (var i=1;i<=PCount;i++)
...{
if (i==CurPage)
...{
PaginationString+="<option value='"+i+"' selected>第"+i+"页</option>";
}else...{
PaginationString+="<option value='"+i+"'>第"+i+"页</option>";
}
}
PaginationString+="</select>";
return PaginationString;
}
</ script >
示例1:
< script language = "JavaScript" > ...
document.write(Pagination(365,20,9,""));
</ script >
< br />< br />
示例2:
< script language = "JavaScript" > ...
document.write(Pagination(105,20,1,"?id=110","篇"));
</ script >
< br />< br />
详细内容见:http://www.qlolo.com/?m=pc&a=page_fh_diary&target_c_diary_id=875