ในโครงการ ASP ขนาดใหญ่หลายหน้าเกี่ยวข้องกับฟังก์ชั่นการเลี้ยวหน้า หากแต่ละหน้าเขียนโปรแกรมการเปลี่ยนหน้างานดังกล่าวจะช่วยลดประสิทธิภาพการทำงานจะไม่เอื้อต่อการทำให้เป็นโมดูลาร์ของโครงการและไม่สามารถนำรหัสกลับมาใช้ใหม่ได้ ดังนั้นจึงจำเป็นต้องทำให้ฟังก์ชั่นแบบแยกส่วนเช่นการพลิกหน้า
วิธีการออกแบบ:
1. เมื่อเรียกโมดูลนี้คุณจะต้องผ่านชุดระเบียนและจำนวนระเบียนที่แสดงในแต่ละหน้า
2. คุณสามารถคลิกที่ลิงค์เพื่อเปิดหน้าหรือคุณสามารถป้อนหมายเลขหน้าโดยตรงและเปิดหน้าหลังจากกด
3. อย่าพิจารณาชื่อไฟล์โปรแกรมสามารถอยู่ในหน้าปัจจุบันทุกครั้งที่เปิด
หลังจากคิดถึงคำถามสามข้อข้างต้นโมดูลการเปลี่ยนหน้าสาธารณะของเราสามารถเริ่มต้นได้
-
-
'◆ชื่อโมดูล: โมดูลเปิดหน้าสาธารณะ
'◆ชื่อไฟล์: turnpage.asp
'◆พารามิเตอร์ที่เข้ามา: RS_TMP (ชุดบันทึก), pagesize (จำนวนระเบียนที่แสดงต่อหน้า)
'◆เอาท์พุท: ฟังก์ชันการแสดงผลการแสดงผล
-
-
Subturnpage (byrefrs_tmp, pagesize) 'ชุดระเบียน RS_TMP; ทำให้จำนวนบันทึกที่แสดงต่อหน้า
หน้า Dimtotalpage'total
dimpageno 'หน้าใดที่ปรากฏในขณะนี้
Dimrecordcount'total จำนวนระเบียน
rs_tmp.pagesize = pagesize
recordCount = rs_tmp.recordCount
TotalPage = int (RecordCount/Pagesize*-1)*-1
pageno = request.querystring ("pageno")
'เลี้ยวเข้าสู่จำนวนหน้าเพื่อกระโดดโดยตรง
ifrequest.form ("pageno") <> "" thenpageno = request.form ("pageno")
'หากไม่ได้เลือกหน้าเว็บหน้าแรกจะแสดงตามค่าเริ่มต้น
ifpageno = "" thenpageno = 1
ifrecordcount <> 0 แล้ว
rs_tmp.absolutepage = pageno
endif
'รับชื่อไฟล์ปัจจุบันเพื่อให้การหมุนทุกหน้าดำเนินการในหน้าปัจจุบัน
dimfilename ตำแหน่ง
filename = request.serverVariables ("script_name")
postion = instrrev (ชื่อไฟล์, "/")+1
'รับชื่อไฟล์ปัจจุบันเพื่อให้ลิงก์การหันหน้าไปยังไฟล์ปัจจุบัน
FileName = Mid (ชื่อไฟล์, โพสต์)
-
<TableBorder = 0width = '100%'>
<tr>
<tdalign = ซ้าย> จำนวนหน้าทั้งหมด: <fontcolor =#ff3333> <%= totalPage%> </font> หน้า
หน้าปัจจุบัน <fontcolor =#ff3333> <%= pageno%> </font>
<tdalign = "ขวา">
<%ifrecordCount = 0OTOTALPAGE = 1 จากนั้น
Response.write "หน้าแรก | หน้าก่อนหน้า | หน้าถัดไป | หน้าสุดท้าย"
Else%>
<ahref = "<%= ชื่อไฟล์%>? pageno = 1"> หน้าแรก | </a>