⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pagenavigator.asp

📁 ASP编写的一个公司网站的源程序
💻 ASP
字号:

<%
Dim dFirst
Dim dPrev
Dim dNext
Dim dLast

Public RecordCount

Public PageNo
Public PageSize
Public PageCount


Public Sub InitRS( ByRef rs, ByVal p )
	PageSize = p
	rs.pagesize = PageSize
	
	PageCount = rs.PageCount
	RecordCount = rs.RecordCount

	PageNo = Trim(Request("PageNo"))
	if isNumeric(PageNo) then
	    PageNo = clng(PageNo)
	    if PageNo < 1 or PageNo > PageCount then
	        PageNo = 1
	    end if
	else
	    PageNo = 1
	end if
	
	if RecordCount > 0 then rs.Absolutepage = PageNo

End Sub


Public Sub ShowPageNavigator(ByVal Despage, ByVal NavType )

	If despage = "" Then
		despage = Request.ServerVariables("Script_Name")
	End If	

	Select Case navtype
		Case  1
			Call ShowNavButton( despage )
		Case  2
			'
			Call ShowNavLink( despage )
	End Select
End Sub

'以链接的方式来显示分页
Public Sub ShowNavLink(ByVal Despage)
	if PageCount = "" Then PageCount = 1	'修改当没有记录时会有问题 added by tianjincat 2002-04-11
	if PageNo = "" Then PageNo = 1
	if RecordCount = "" Then RecordCount = 0

	If CLng( PageNo ) <= 1 Then
		dFirst = "disabled"
		dPrev = "disabled"
	End If
	
	If CLng( PageNo ) >= PageCount then
		dNext = "disabled"
		dLast = "disabled"
	End If 
	
	If PageCount <= 1 Then Exit Sub
	Response.Write "<p><span class=smallFont>&gt;&gt; <strong><font color=navy>分页</font></strong> " & vbCrLf
	If PageNo = 1 Then
		Response.Write "<font color=darkgray>首页 前页</font>"
	Else
		If InStr( 1, despage, "?", 1 ) = 0 Then '未加其他参数
			Response.Write "<a href=""" & despage & "?"
			Response.Write "PageNo=1"">首页</a> <a "
			Response.Write " href=""" & despage & "?"
			Response.Write "PageNo="
			Response.Write PageNo - 1
			Response.Write """>前页</a>"
		Else
			Response.Write "<a href=""" & despage & ""
			Response.Write "&PageNo=1"">首页</a> <a "
			Response.Write " href=""" & despage & ""
			Response.Write "&PageNo="
			Response.Write PageNo - 1
			Response.Write """>前页</a>"		
		End If
	End If
	Response.Write "&nbsp;"
	If PageNo = PageCount Then
		Response.Write "<font color=darkgray>后页 尾页</font>"
	Else
		If InStr( 1, despage, "?", 1 ) = 0 Then '未加其他参数
			Response.Write "<a href=""" & despage & "?"
			Response.Write "PageNo="
			Response.Write PageNo + 1
			Response.Write """>后页</a> <a "
			Response.Write "href=""" & despage & "?"
			Response.Write "PageNo="
			Response.Write PageCount
			Response.Write """>尾页</a>"
		Else
			Response.Write "<a href=""" & despage & ""
			Response.Write "&PageNo="
			Response.Write PageNo + 1
			Response.Write """>后页</a> <a "
			Response.Write "href=""" & despage & ""
			Response.Write "&PageNo="
			Response.Write PageCount
			Response.Write """>尾页</a>"		
		End If
	End If
	Response.Write " 页次:<strong>"
	Response.Write PageNo
	Response.Write "</strong>/<strong>"
	Response.Write PageCount
	Response.Write "</strong>页 <strong>"
	Response.Write PageSize
	Response.Write "</strong>篇/页 共<strong>"
	Response.Write RecordCount
	Response.Write "</strong>篇</font>"
	Response.Write "</p>"
End Sub

'以按钮的方式来显示分页
Public Sub ShowNavButton(ByVal despage )
	if PageCount = "" Then PageCount = 1	'修改当没有记录时会有问题 added by tianjincat 2002-04-11
	if PageNo = "" Then PageNo = 1
	if RecordCount = "" Then RecordCount = 0

	If CLng( PageNo ) <= 1 Then
		dFirst = "disabled"
		dPrev = "disabled"
	End If
	
	If CLng( PageNo ) >= PageCount then
		dNext = "disabled"
		dLast = "disabled"
	End If 
	
	If InStr( 1, despage, "?", 1 ) = 0 Then '未加其他参数

		Response.Write "<button type=button name=btnFirst  Style=""font size=9pt"" onclick=""window.location.href='"& despage &"?PageNo=1'"" "& dFirst &">最前页</button>&nbsp;"
		Response.Write "<button type=button name=btnPrev  Style=""font size=9pt"" onclick=""window.location.href='"& despage &"?PageNo="& PageNo-1 &"'"" "& dPrev &">上一页</button>&nbsp;"
		Response.Write "<button type=button name=btnNext  Style=""font size=9pt"" onclick=""window.location.href='"& despage &"?PageNo="& PageNo+1 &"'"" "& dNext &">下一页</button>&nbsp;"
		Response.Write "<button type=button name=btnLast  Style=""font size=9pt"" onclick=""window.location.href='"& despage &"?PageNo="& PageCount &"'"" "& dLast &">最后页</button>&nbsp;"

	Else

		Response.Write "<button type=button name=btnFirst  Style=""font size=9pt"" onclick=""window.location.href='"& despage &"&PageNo=1'"" "& dFirst &">最前页</button>&nbsp;"
		Response.Write "<button type=button name=btnPrev  Style=""font size=9pt"" onclick=""window.location.href='"& despage &"&PageNo="& PageNo-1 &"'"" "& dPrev &">上一页</button>&nbsp;"
		Response.Write "<button type=button name=btnNext  Style=""font size=9pt"" onclick=""window.location.href='"& despage &"&PageNo="& PageNo+1 &"'"" "& dNext &">下一页</button>&nbsp;"
		Response.Write "<button type=button name=btnLast  Style=""font size=9pt"" onclick=""window.location.href='"& despage &"&PageNo="& PageCount &"'"" "& dLast &">最后页</button>&nbsp;"

	End If
	'显示跳转
	Call showJumpMenu( PageCount, Despage)

	Response.Write "<br>&nbsp;&nbsp;第" & CStr(PageNo) & "页/共" & CStr(PageCount) & "页"
	Response.Write "(" & CStr(RecordCount) & "条记录)"

End Sub

Public Sub ShowCurrentPageCount( )
	
	Dim CurrentPageCount
	
	If RecordCount <= PageSize Then				'记录小于分页数时
		CurrentPageCount = RecordCount		
	Elseif (RecordCount Mod PageSize) = 0 Then	'记录正好是分页数时
		CurrentPageCount = PageSize
	Else	'
		If PageNO = 1 Then
			CurrentPageCount = PageSize
		ElseIf PageNO = PageCount Then
			CurrentPageCount = (RecordCount Mod PageSize)
		Else
			CurrentPageCount = PageSize
		End If	
		
	End If
	
	Response.Write CurrentPageCount
	
End Sub

'####################
'显示跳转
'####################
Private Sub showJumpMenu(ByVal PageCount, ByVal Despage)
	Dim i
	i = 1
	Response.Write VBCRLF
	Response.Write "<script language=""JavaScript"" src=""/JS/jumpMenu.js""></script>" & VBCRLF
	Response.Write "<select name=""JumpMenu"" onChange=MM_jumpMenu('window',this,0) ID=""Select1"">" & VBCRLF
		Do while i <= PageCount 
			if instr(1,despage,"?",1) = 0 then '未加其他参数
				Response.Write "<option value="& Despage & "?PageNo=" & i
					If i = PageNO Then response.Write " selected"
				Response.Write ">第"& i &"页&nbsp;</option>" & VBCRLF
			Else
				Response.Write "<option value="& Despage & "&PageNo=" & i
					If i = PageNO Then response.Write " selected"
				Response.Write ">第" & i & "页&nbsp;</option>" & VBCRLF
			End If
		i = i + 1
		Loop
	Response.Write "</select>" &  VBCRLF
End Sub
%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -