下面的脚本提供了分页显示查询结果功能,它是利用ADO采用带页码参数的方法控制翻页,这样的好处是可以方便地直接指定要浏览的页面。同时,只要VFP的本地视图名称不变,视图中的SQL 任意变化均不需维护ASP页面。
〈%
′将自动生成的ASP文件,由〈TABLE...〉开始全部删除,改用下列程序段。
rs.PageSize = 5
Page = CLng(Request(″Page″))
If Page 〈 1 Then Page = 1
If Page 〉 rs.PageCount Then Page = rs.PageCount
Response.Write ″〈TABLE ALIGN=CENTER BORDER=1〉 〈CAPTION〉〈B〉分页显示VFP数据库〈/B〉〈/CAPTION〉″
Response.Write ″〈TR BGCOLOR=#ffff00〉″
For i=0 to rs.Fields.Count-1
Response.WRITE ″〈TD〉″ & rs.Fields(i).Name & ″〈/TD〉″
Next
Response.Write ″〈/TR〉″
rs.AbsolutePage = Page
For iPage = 1 To rs.PageSize
Response.Write ″〈TR〉″
For i=0 to rs.Fields.Count-1
Response.WRITE ″〈TD〉″ & rs.Fields(i).Value & ″〈/TD〉″
Next
Response.Write ″〈/TR〉″
rs.MoveNext
If rs.EOF Then Exit For
Next
Response.Write ″〈/TABLE〉″
%〉
〈form action=″PageBrow.asp″ method=″GET″id=form1 name=form1〉
〈font color=″#008000″〉 共〈%=rs.PageCount%〉页
您正在浏览第〈input type=″text″ size=″2″ name=″Page″ value=〈%=Page%〉 〉页
〈/font〉
〈%
If Page 〈〉 1 Then
Response.Write ″〈A HREF=xf.asp?Page=1〉〈首页〉〈/A〉 ″
Response.Write ″〈A HREF=xf.asp?Page=″ & (Page-1) & ″〉〈前页〉〈/A〉 ″
Else Response.Write ″〈首页〉 〈前页〉″
End If
If Page 〈〉 rs.PageCount Then
Response.Write ″〈A HREF=xf.asp?Page=″ & (Page+1) & ″〉〈后页〉〈/A〉″
Response.Write ″〈A HREF=xf.asp?Page=″& rs.PageCount & ″〉〈尾页〉〈/A〉″
Else Response.Write ″〈后页〉 〈尾页〉″
End If
%〉
〈/form〉〈/body〉〈/html〉
责任编辑:cyth