JavaScript实现的分页(样式2)

自己写的一个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>个&nbsp;&nbsp;共<strong>"+PCount+"</strong>页&nbsp;&nbsp;"
    
if (CurPage>1)
    
{            
        PaginationString
+="<a href=""+QString+"page=1" title="第一页"><img src="images/Pagination_First.gif" border="0"></a>";
    }

    
if (p*ShowPage > 0)
    
{
        PaginationString 
+="&nbsp;<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
+="&nbsp;<B><font color="red">"+i+"</font></B>&nbsp;";
            }

            
else
            
{
                PaginationString
+="&nbsp;<a href=""+QString+"page="+i+"">"+i+"</a>&nbsp;";
            }

            
if (i==PCount) break;
        }

    }

    
if (i<PCount)
    
{
        PaginationString
+="&nbsp;<a href=""+QString+"page="+i+"" title="下"+ShowPage+"页"><img src="images/Pagination_Next.gif" border="0"></a>";
    }

    
if (CurPage<PCount)
    
{
        PaginationString
+="&nbsp;<a href=""+QString+"page="+PCount+"" title="尾页"><img src="images/Pagination_Last.gif" border="0"></a>";
    }

    PaginationString
+="&nbsp;&nbsp;<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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值