ASP显示分页导航条

本文介绍了一种在ASP中实现分页导航条的方法。通过两个函数GetPage和ShowPage,可以轻松地在网页上展示分页导航条,并且能够处理用户输入的页码。此方法适用于需要展示大量数据并进行分页的网页应用程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 <%'**************************************************************************************
'
*                                                                                      *
'
*                                     文件说明部分                                     *
'
*                                                                                      *
'
****************************************************************************************

'----------------------------------------------------------------------------------------
'
该文件中实现的函数:
'
    GetPage(Max)    获取页码,返回类型:int
'
    ShowPage(intCurPage,intPageCount,intPageSize,intRecordCount)    显示导航条,无返回值
'
----------------------------------------------------------------------------------------

'使用实例:把以下*号中的代码放到ASP文件中的body之间
'
----------------------------------------------------------------------------------------
'
*<form action='' method='get' name='frmPage'>
'
*< %
'
*    intPageSize=5    '页面大小:rs.pagesize
'
*    intPageCount=6    '页面数量:rs.pagecount
'
*    intRecordCount=29    '总共记录数量:rs.recordcount
'
*    intCurPage=GetPage(intPageCount )    '获取当前页:rs.absolutepage
'
*    call showpage(intCurPage,intPageCount,intPageSize,intRecordCount)    '显示导航条
'
*% >
'
</form>
'
----------------------------------------------------------------------------------------

'****************************************************************************************
'
*                                                                                      *
'
*                                     函数实现部分                                     *
'
*                                                                                      *
'
****************************************************************************************
%>
<script language="javascript">
     
function viewPage(ipage){
        document.frmPage.m_page.value
=ipage;
        document.frmPage.submit();        
     }
</script>
<%
'----------------------------------------------------------------------------------------
'
函数名称:GetPage(maxPageNum)
'
函数功能:获取m_page并且转为正确int类型页码
'
参数列表:Max最大限制页码,如:rs.pagesize
'
程序设计:覃雁禄qylmail@163.com
'
设计日期:2006-9-20
'
----------------------------------------------------------------------------------------
function GetPage(Max)
        Page
=Request("m_page")                   
        
if Page="" then 
            Page
=1
        
elseif not IsNumeric(Page) then 
            Page
=1 
        
else
            Page
=Cint(Page) 
        
end if 
        
if Page<1 then
            Page
=1
        
end if
        
if Page>Max then
            Page
=Max
        
end if        
        GetPage
=Page
end function


'----------------------------------------------------------------------------------------
'
函数名称:ShowPage(p_Current,p_Total,p_PageSize,r_Total)
'
函数功能:显示分页导航条
'
参数列表:
'
        p_Total:总页数
'
        p_Current:当前页
'
        p_PageSize:每页记录数
'
        r_Total:总记录数
'
程序设计:覃雁禄qylmail@163.com
'
设计日期:2006-9-20
'
调用方法:
'
    将该页代码包含到要调用的页面.添加名称为"frmPage"的窗体,
'
    在窗体中调用 ShowPage(p_Current,p_Total,p_PageSize,r_Total).
'
    要传递的其它参数可以用该形式传递:<input name="keys" type="hidden" id="keys" value="1">
'
    实例如下:
'
    <form action="" method="get" name="frmPage">
'
        <input name="keys" type="hidden" id="keys" value="1">
'
        < %Call ShowPage(p_Current,p_Total,p_PageSize,r_Total)% >
'
    </form>
'
备    注:
'
    为方便添加其它参数,该函数不提供窗体,
'
    所以调用时需放在一个窗体里,并且将窗体名称命名为:frmPage.
'
------------------------------------------------------------------------------------------
Sub ShowPage(p_Current,p_Total,p_PageSize,r_Total)
    response.Write 
"总计<font color='#FF0000'>"&r_Total&"</font>条记录 "
    response.Write 
"页次<font color='#FF0000'>"&p_Current&"</font>/<font color='#FF0000'>"&p_Total&"</font> "
    response.Write 
"每页<font color='#FF0000'>"&p_PageSize&"</font>条"
    
if p_Total>1 then  '当记录大于一页时
        if p_Current=1 then     '当前记录为第一页
            response.Write " 首页 上页 <a href='JavaScript:viewPage("&p_Current+1&")'>下页</a> "
            response.Write 
"<a href='JavaScript:viewPage("&p_Total&")' >尾页</a>"    
        
elseif p_Current=p_Total then     '当前记录为最后一页
            response.Write " <a href='JavaScript:viewPage(1)'>首页</a> "
            response.Write 
"<a href='JavaScript:viewPage("&p_Current-1&")'>上页</a> 下页 尾页"        
        
else
            response.Write 
" <a href='JavaScript:viewPage(1)'>首页</a> <a href='JavaScript:viewPage("&p_Current-1&")'>上页</a> "
            response.Write 
"<a href='JavaScript:viewPage("&p_Current+1&")'>下页</a> <a href='JavaScript:viewPage("&p_Total&")'>尾页</a>"
        
end if 
    
else    '当记录只有一页时
        response.Write " 首页 上页 下页 尾页"
    
end if
    response.Write 
" <input name='m_page' type='text' size='3' maxlength='5' value='"&p_Current&"' onMouseOver='this.focus();this.select()'/>"
    response.Write 
" <input name='btnGo' type='submit' value='GO'/>"
End Sub
%
>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值