用户名: 密码: 免费注册 忘记密码? 网站地图 | 加入收藏 | 设为首页
首页 | 新闻 | 工具 | 系统 | 办公 | 聊天 | 多媒体 | 网页 | 运营 | 平面 | 欣赏 | 数据库 | 程序 | 服务器 | 组网
网页 | 3dmax | Ghost | Windows Xp| Dreamweaver | photoshop | Flash | office | Alexa | Css | QQ | Asp | PHP | Jsp | Access
Flash MX 2004入门 | 网站推广策略 | CorelDRAW入门 | ASP学习 | 网站建设大师功 | Word入门
  iTbulo.com > 学院 > 程序开发教程 > ASP教程 > ASP实例教程 > 文章正文
用Dreamweaver+ASP实现网页分页
iTbulo.COM 2007-3-24 天极()

今天心情有点激动,想把"关于用DW+ASP实现分页技术的参考"分享给用DW+ASP做网页的朋友们.去掉只有"第一页,前一页,下一页,最后一页"的小痛苦 。
  此效果最后的显示是:第N页[共*页] <<1 2 3 4 5 6 7 8 9 10 >>。

  用DW+ASP做网页时,在绑定记录集后,代码页里马上出现以下代码:

<%   
Dim Recordset1   
Dim Recordset1_numRows   
Set Recordset1 = Server.CreateObject("ADODB.Recordset")   
Recordset1.ActiveConnection = MM_数据库名_STRING   
Recordset1.Source = "SELECT * FROM 表名"   
Recordset1.CursorType = 0   
Recordset1.CursorLocation = 2   
Recordset1.LockType = 1   
Recordset1.Open()   
Recordset1_numRows = 0   
%>  

  现在我们要来对代码做点修改,请在上面代码中修改为如下的代码:

<%   
Dim I   
Dim RPP   
Dim PageNo   
I=1   
RPP=50   
PageNo=CInt(Request("PageNo"))   
’上面即是新插入的,   
Dim Recordset1   
Dim Recordset1_numRows   
Set Recordset1 = Server.CreateObject("ADODB.Recordset")   
Recordset1.ActiveConnection = MM_数据库名_STRING   
Recordset1.Source = "SELECT * FROM 数据库名"   
Recordset1.CursorType = 1 ’将上面代码的0改为1.   
Recordset1.CursorLocation = 2   
Recordset1.LockType = 1   
Recordset1.Open()   
Recordset1_numRows = 0 ’再在此行的下一行开始加入如下代码:   
Recordset1.PageSize=RPP   
If PageNo<=0 Then PageNo=1   
If PageNo>Recordset1.PageCount Then PageNo=Recordset1.PageCount   
Recordset1.AbsolutePage=PageNo   
Sub ShowPageInfo(tPageCount,cPageNo)   
Response.Write "第"&cPageNo&"页[共"&tPageCount&"页]"   
End Sub   
Sub ShowPageNavi(tPageCount,cPageNo)   
If cPageNo<1 Then cPageNo=1   
If tPageCount<1 Then tPageCount=1   
If cPageNo>tPageCount Then cPageNo=tPageCount   
Dim NaviLength   
NaviLength=10 ’NaviLength:显示的数字链接个数   
Dim I,StartPage,EndPage   
StartPage=(cPageNo\NaviLength)*NaviLength+1   
If (cPageNo Mod NaviLength)=0 Then StartPage=StartPage-NaviLength   
EndPage=StartPage+NaviLength-1   
If EndPage>tPageCount Then EndPage=tPageCount   
If StartPage>1 Then   
Response.Write "<a class=""pageNavi"" href=""?PageNo=" & (cPageNo-NaviLength) & """><<</a> "   
Else   
Response.Write "<font color=""#CCCCCC""><<</font> "   
End If   
For I=StartPage To EndPage   
If I=cPageNo Then   
Response.Write "<b>"&I&"</b>"   
Else   
Response.Write "<a class=""pageNavi"" href=""?PageNo=" & I & """>" & I & "</a>"   
End If   
If I<>tPageCount Then Response.Write "&nbsp;"   
Next   
If EndPage<tPageCount Then   
Response.Write " <a class=""pageNavi"" href=""?PageNo=" & (cPageNo+NaviLength) & """>>></a>"   
Else   
Response.Write " <font color=""#CCCCCC"">>></font> "   
End If   
End Sub   
%>  
上面代码中:RPP:指定每页显示的记录条数。即每页显示几条数据。

  NaviLength:显示的数字链接个数,即10就为1 2 3 ...10的连接个数。

  若要显示所有连接的页(个)数,你可以设置为:NaviLength=tPageCount。

  这时代码已经差不多了,但还要在显示的地方(如表格)中加点代码才行吧,(要不然怎么显示,呵~~~)如我们插入一个2行3列的表格。

[1] [2] [3] 下一页

文章搜索
相关资讯
相关文章 相关下载
Dreamweaver CS3 最新功能描述
新手入门:防范SQL注入攻击的新办法
ASP调用SQL Server视图和存储过程
入门教程:ASP设计常见问题及解答精要
在ASP页里面注册DLL的VBScript CLASS
焦点信息