![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2QvwVe0lmdhJ3ZvwFM38CXlZHbvN3cpR2Lc1TPB10QGtWUCpEMJ9CXsxWam9CXwADNvwVZ6l2c052bm9CXUJDT1wkNhVzLcRnbvZ2Lc1zZE9UNFpHWpRGShZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39zMwADMwIzMyITMxEDM1EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
從背景讀取記錄,如果資料過多,就需要劃分多頁去顯示,本章就是模仿CDSN來實作該功能的,采用asp動态語言實作的,求噴我,css這部分我完全是copy過來的,隻改了一點,我主要完成的是asp後面的代碼。本章也是做一個記錄,友善後面項目中使用,如上圖所示。
建立pagelist.css檔案:
/* CSS Document */
.pagelist{clear:both;padding:15px 0;color:#666;font:normal 12px/24px Arial;text-align:center}
.pagelist a{display:inline-block;height:22px;margin:0 2px;padding:0 8px;border:solid 1px #dbe5ee;background:#fff;color:#333;font:normal 12px/22px Arial,Helvetica,sans-serif;cursor:pointer;text-decoration : none;}
.pagelist strong{display:inline-block;height:24px;margin:0 3px;padding:0 8px;border:0;background:#07519a;color:#fff;font-weight:normal;line-height:24px;text-decoration:none}
.pagelist a:hover{height:24px;margin:0 3px;border:0;background:#07519a;color:#fff;line-height:24px;text-decoration:none}
.pagelist a.select{cursor:default}
建立main.css檔案:
<!DOCTYPE>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>上一頁 下一頁</title>
</head>
<link rel="stylesheet" type="text/css" href="pagelist.css" target="_blank" rel="external nofollow" />
<body>
<%@LANGUAGE='VBSCRIPT' CODEPAGE='65001'%>
<div class="pagelist">
<%
dim page,startPos,endPos
dim url
url = "main.asp?page="
page = cint(request.QueryString("page"))
set conn=Server.CreateObject("ADODB.Connection")
conn.open"provider=microsoft.jet.oledb.4.0;data source="&server.mappath("info.mdb")
set rs=server.createobject("adodb.recordset")
sql = "select * from client"
rs.open sql,conn,1,3
rs.pagesize = 2 '每頁有多少資料,這裡設定為2主要是友善測試
allpage = rs.pagecount '一共有多少頁
if page < 1 then page = 1
if page > allpage then page = allpage
rs.absolutepage=page
response.Write("<span> " & cstr(rs.recordcount) & "條資料 共" & cstr(allpage) & "頁" & "</span>" + vbcrlf)
if page > 1 then
response.Write("<a href = " & url & "1" &">首頁</a>" + vbcrlf)
response.Write("<a href = " & url & cstr(page - 1) &">上一頁</a>" + vbcrlf)
end if
startPos = page - 3 '該數字可以更改,自己試試看,我就不表達了,意會就行了
endPos = page + 3
if startPos < 1 then
startPos = 1
elseif startPos > 1 then
response.Write("<a href = " & url & cstr(startPos - 1) & ">...</a>" + vbcrlf)
end if
if endPos > allpage then
endPos = allpage
end if
for i = startPos to endPos
if i = page then
response.Write("<strong>" & cstr(i) & "</strong>")
else
response.Write("<a href = " & url & cstr(i) & ">" & cstr(i) & "</a>" + vbcrlf)
end if
next
if endPos < allpage then
response.Write("<a href = " & url & cstr(endPos + 1) & ">...</a>" + vbcrlf)
end if
if page <> allpage then
response.Write("<a href = " & url & cstr(page + 1) &">下一頁</a>" + vbcrlf)
response.Write("<a href = " & url & cstr(allpage) &">尾頁</a>" + vbcrlf)
end if
rs.close
conn.close
%>
</div>
</div>
</body>
</html>
這裡還需要建立名字為info.mdb的access資料庫,在裡面添加client的表,添加user字段。