自己写的一个JavaScript的分页函数,这个是第二个样式。
<
meta
http-equiv
="Content-Type"
content
="text/html; charset=utf-8"
/>
< strong > 分页: </ strong >< br />< br />
< script language ="javascript" > ...
/**//*
* 函数:Pagination(RCount,PageSize,CurPage,ShowPage,QString)
* 说明:计算分页信息
* 作者:lg970044
* 输入:
* @参数 {Number}RCount 总的记录个数
* @参数 {Number}PageSize 页面的最大记录个数
* @参数 {Number}CurPage 当前页数
* @参数 {Number}ShowPage 要显示的页数
* @参数 {String}QString 链接的查询字符串
* #参数 {String}RUnit 记录的单位
* 输出:
* @参数 {String}PaginationString 包含分页信息的字符串
*/
function Pagination(RCount,PageSize,CurPage,ShowPage,QString)...{
//默认参数RUnit(记录的单位)设为 "个"
var RUnit=arguments[5]?arguments[5]:"个";
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);
ShowPage=parseInt(ShowPage);
//计算出总页数
if (RCount%PageSize==0)...{
PCount=parseInt(RCount/PageSize);
}else...{
PCount=parseInt(RCount/PageSize)+1
}
//当传递的当前页数比总页数大时,使当前页数等于总页数
if (CurPage>PCount)...{CurPage=PCount;}
//组成分页信息的字符串
var p;
if ((CurPage-1)%ShowPage==0)
...{
p=(CurPage-1)/ShowPage
}
else
...{
p=(((CurPage-1)-(CurPage-1)%ShowPage)/ShowPage)
}
PaginationString+="共有<strong>"+RCount+"</strong>个 共<strong>"+PCount+"</strong>页 "
if (CurPage>1)
...{
PaginationString+="<a href=""+QString+"page=1" title="第一页"><img src="images/Pagination_First.gif" border="0"></a>";
}
if (p*ShowPage > 0)
...{
PaginationString +=" <a href=""+QString+"page="+p*ShowPage+"" title="上"+ShowPage+"页"><img src="images/Pagination_Previous.gif" border="0"></a>";
}
if (PCount>0)
...{
for (var i=p*ShowPage+1;i<p*ShowPage+ShowPage+1;i++)
...{
if (i==CurPage)
...{
PaginationString+=" <B><font color="red">"+i+"</font></B> ";
}
else
...{
PaginationString+=" <a href=""+QString+"page="+i+"">"+i+"</a> ";
}
if (i==PCount) break;
}
}
if (i<PCount)
...{
PaginationString+=" <a href=""+QString+"page="+i+"" title="下"+ShowPage+"页"><img src="images/Pagination_Next.gif" border="0"></a>";
}
if (CurPage<PCount)
...{
PaginationString+=" <a href=""+QString+"page="+PCount+"" title="尾页"><img src="images/Pagination_Last.gif" border="0"></a>";
}
PaginationString+=" <input type=text size=3 value=""+CurPage+"" οnkeydοwn="if(event.keyCode==13){window.location='"+QString+"page='+this.value;return false;}">";
return PaginationString;
}
</ script >
示例1:
< script language = "JavaScript" > ...
document.write(Pagination(1365,20,25,10,""));
</ script >
< br />< br />
示例2:
< script language = "JavaScript" > ...
document.write(Pagination(1105,20,1,10,"?id=110","篇"));
</ script >
< br />< br />
< strong > 分页: </ strong >< br />< br />
< script language ="javascript" > ...
/**//*
* 函数:Pagination(RCount,PageSize,CurPage,ShowPage,QString)
* 说明:计算分页信息
* 作者:lg970044
* 输入:
* @参数 {Number}RCount 总的记录个数
* @参数 {Number}PageSize 页面的最大记录个数
* @参数 {Number}CurPage 当前页数
* @参数 {Number}ShowPage 要显示的页数
* @参数 {String}QString 链接的查询字符串
* #参数 {String}RUnit 记录的单位
* 输出:
* @参数 {String}PaginationString 包含分页信息的字符串
*/
function Pagination(RCount,PageSize,CurPage,ShowPage,QString)...{
//默认参数RUnit(记录的单位)设为 "个"
var RUnit=arguments[5]?arguments[5]:"个";
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);
ShowPage=parseInt(ShowPage);
//计算出总页数
if (RCount%PageSize==0)...{
PCount=parseInt(RCount/PageSize);
}else...{
PCount=parseInt(RCount/PageSize)+1
}
//当传递的当前页数比总页数大时,使当前页数等于总页数
if (CurPage>PCount)...{CurPage=PCount;}
//组成分页信息的字符串
var p;
if ((CurPage-1)%ShowPage==0)
...{
p=(CurPage-1)/ShowPage
}
else
...{
p=(((CurPage-1)-(CurPage-1)%ShowPage)/ShowPage)
}
PaginationString+="共有<strong>"+RCount+"</strong>个 共<strong>"+PCount+"</strong>页 "
if (CurPage>1)
...{
PaginationString+="<a href=""+QString+"page=1" title="第一页"><img src="images/Pagination_First.gif" border="0"></a>";
}
if (p*ShowPage > 0)
...{
PaginationString +=" <a href=""+QString+"page="+p*ShowPage+"" title="上"+ShowPage+"页"><img src="images/Pagination_Previous.gif" border="0"></a>";
}
if (PCount>0)
...{
for (var i=p*ShowPage+1;i<p*ShowPage+ShowPage+1;i++)
...{
if (i==CurPage)
...{
PaginationString+=" <B><font color="red">"+i+"</font></B> ";
}
else
...{
PaginationString+=" <a href=""+QString+"page="+i+"">"+i+"</a> ";
}
if (i==PCount) break;
}
}
if (i<PCount)
...{
PaginationString+=" <a href=""+QString+"page="+i+"" title="下"+ShowPage+"页"><img src="images/Pagination_Next.gif" border="0"></a>";
}
if (CurPage<PCount)
...{
PaginationString+=" <a href=""+QString+"page="+PCount+"" title="尾页"><img src="images/Pagination_Last.gif" border="0"></a>";
}
PaginationString+=" <input type=text size=3 value=""+CurPage+"" οnkeydοwn="if(event.keyCode==13){window.location='"+QString+"page='+this.value;return false;}">";
return PaginationString;
}
</ script >
示例1:
< script language = "JavaScript" > ...
document.write(Pagination(1365,20,25,10,""));
</ script >
< br />< br />
示例2:
< script language = "JavaScript" > ...
document.write(Pagination(1105,20,1,10,"?id=110","篇"));
</ script >
< br />< br />
附:
images/Pagination_First.gif
images/Pagination_Last.gif
images/Pagination_Next.gif
images/Pagination_Previous.gif
详细内容见:http://www.qlolo.com/?m=pc&a=page_fh_diary&target_c_diary_id=878