在微軟的ASP編程體系中
因為主題方面的原因
這七種分頁顯示的武器概括起來說分四類
第一
第四
第六種暫取名叫“SOM服務器端法”
第七種暫取名叫“DEOM法”
在後面所舉的所有例子源代碼
在開始詳細介紹各種分頁方法前
第一種
這種方法是用手工建立Recordset對象
<%//建立與employee
Set conn = Server
conn
//建立emp表的Recordset對象實例rs
Set rs = Server
rs
PageSize =
Page = CLng(Request("Page")) ’string型轉化為long型
If Page <
If Page > rs
If Page <>
Response
Response
End If
If Page <> rs
Response
Response
End If
Response
//每一頁的顯示
//顯示表頭
Response
Response
Response
Response
//循環顯示每條記錄
rs
For iPage =
Response
Response
Response
rs
If rs
Next
Response
第二種
這種方法在創建Recordset對象時與第一種相同
if Pagenum = "" Then Pagenum =
//建立數據庫連接和Recordset對象實例rs
與第一種方法相同
RS
// 確定翻頁的動作
Select Case Request("NAV")
Case ""
session("Pagenum") =
case "First" ’ First Record
session("Pagenum") =
case "Prev" ’ Previous Record
if session("Pagenum") >
session("Pagenum") = session("Pagenum")
End If
case "Next" ’ Next Record
if session("Pagenum")< RS
session("Pagenum") = session("Pagenum") +
End if
case "Last" ’ Last Record
session("Pagenum") = RS
End Select
RS
// 顯示當前頁
同第一種方法
// Nav 翻頁按鈕設置
<form method="GET" action="emp
<input type="submit" name="NAV" Value="首頁">
<input type="submit" value="上頁" name="NAV">
<input type="submit" value="下頁" name="NAV">
<input type="submit" value="末頁" name="NAV"></form>
第三種
所有的方法中
方法如下
在VI
第一步
當你拖控件到網頁中時
第三步
第四種
數據記錄顯示在一個HTML表中
在DHTML中
我們來看下面的例子
第一步
第二步
<TABLE ID="Table
<THEAD>
<TH ALIGN="left" WIDTH=
<TH ALIGN="left" WIDTH=
<TH ALIGN="left" WIDTH=
</THEAD>
<TR>
<TD><DIV DATAFLD="Emp ID"></DIV></TD> //輸出表內容
<TD><DIV DATAFLD="Last Name"></DIV></TD>
<TD><DIV DATAFLD="First Name"></DIV></TD>
</TR>
</TABLE>
第三步
<SCRIPT LANGUAGE=VBScript>
Function btnPrevious_onclick()
Table
End Function
Function btnNext_onclick()
Table
End Function
</SCRIPT>
第五種
這種方法是對第四種方法的完善
第一步
第二步
Dim gCurrentPageNumber //當前頁號
Dim gMaxPageNumber //最大頁數
Dim gRecordsPerPage //每頁顯示記錄數
gRecordsPerPage =
Function Recordset
totalRecordCount = Recordset
gMaxPageNumber = Int(totalRecordCount / gRecordsPerPage) //獲得最大頁數
If (totalRecordCount Mod gRecordsPerPage) >
gMaxPageNumber = gMaxPageNumber +
End If
End Function
第三步
Function btnFirst_onclick() ’ 翻到首頁
gCurrentPageNumber =
DisplayData()
End Function
Function btnPrevious_onclick() ’ 翻到上一頁
if gCurrentPageNumber >
gCurrentPageNumber = gCurrentPageNumber
DisplayData()
End If
End Function
Function btnNext_onclick() ’ 翻到下一頁
if gCurrentPageNumber < gMaxPageNumber Then
gCurrentPageNumber = gCurrentPageNumber +
DisplayData()
End If
End Function
Function btnLast_onclick() ’翻到末頁
gCurrentPageNumber = gMaxPageNumber
DisplayData()
End Function
第四步
Sub DisplayData()
startRecord = ((gCurrentPageNumber
rowCtr =
lblPageNumber
For recordPtr = startRecord To (startRecord + gRecordsPerPage
If recordPtr > Recordset
Table
Table
Table
Table
Else //具體顯示每一頁
Recordset
empID = Recordset
empLName = Recordset
empFName = Recordset
Table
Table
Table
Table
End If
rowCtr = rowCtr +
Next
End Sub
另外
For rowCtr =
Table
For cellCtr =
Table
Next
Next
第六種
如果我們在服務器端對數據進行分頁形成HTML語句後再輸出到客戶端
下面的例子中
但這種方法的缺點是
第一步
第二步
第三步
Function Recordset
recordsPerPage =
empList
totalRecordCount = Recordset
mpn = Int(totalRecordCount / recordsPerPage) //計算出mpn為總頁數
If (totalRecordCount Mod recordsPerPage) >
mpn = mpn +
End If
empList
End Function
第四步
Function btnFirst_onclick()’ 翻到首頁
empList
End Function
Function btnPrevious_onclick()’ 翻到上一頁
cpn = empList
if cpn >
empList
End If
End Function
Function btnNext_onclick()’ 翻到下一頁
cpn = empList
if cpn < empList
empList
End If
End Function
Function btnLast_onclick() ’ 翻到末頁
empList
End Function
為保證首次進入該頁時
Function empList_onEnter()
If empList
empList
End If
End Function
第五步
<HR><TABLE BORDER=
<TH ALIGN="left" WIDTH=
<TH ALIGN="left" WIDTH=
<TH ALIGN="left" WIDTH=
<TH ALIGN="left" WIDTH=
<%
pageNumber = empList
recordsPerPage = empList
startRecord = ((pageNumber
lastRecord = Recordset
For recordPtr = startRecord To (startRecord + recordsPerPage
<%If Recordset
<TR>
<TD> </TD>
<TD> </TD>
<TD> </TD>
<TD> </TD>
</TR>
<%Else%>
<%Recordset
<TR>
<% If recordPtr <= lastRecord Then %>
<TD><%=recordptr%></TD>
<%Else%>
<TD> </TD>
<% End If %>
<TD><%=Recordset
<TD><%=Recordset
<TD><%=Recordset
</TR>
<%End If%>
<%Next%>
</TABLE><HR>
第七種
Data Environment對象模型把ADO對象模型及它的對象
第一步
第二步
第三步
thisPage
DE
Set rs=DE
第四步
其它還有如FrontPage
綜上所述
From:http://tw.wingwit.com/Article/program/net/201311/14246.html