ASP 数字分页效果代码
效果:
国外的核心代码:
复制代码 代码如下:
%
'digg style pagination script in asp.. wrITten by Moazam... http://www.moazam.COM/2007/03/30/asp-digg-style-pagination-script/
function getPaginationString(page, totalitems, limit, adjacents, targetpage)
'defaults
if not isnumeric(adjacents) then adjacents = 1 end if
if not isnumeric(limit) then limit = 15 end if
if not isnumeric(page) then page = 1 end if
if targetpage = "" then targetpage = "/" end if
margin = ""
padding=""
'other VARs
prev = page - 1 'PRevious page is page - 1
nextPage = page + 1 'nextPage page is page + 1
lastpage = Ceil(totalitems , limit) 'lastpage is = total items / items PEr page, rounded up.
lpm1 = lastpage - 1 'last page minus 1
' Now we apply our rules and draw the pagination object.
' We're actually saving the code to a variable in case we want to draw it more than once.
pagination = ""
if lastpage >
1 then
pagination = pagination &
"div class=""pagination"""
if margin >
"" OR padding >
"" then
pagination = pagination &
" style="""
if margin >
"" then
pagination = pagination &
"margin: margin"
end if
if padding >
"" then
pagination = pagination &
"padding: padding"
end if
pagination = pagination &
""""
end if
pagination = pagination &
">
"
'previous button
if page >
1 then
pagination = pagination &
"a href="""&
targetpage&
"&
page="&
prev&
""">
Prev/a>
"
else
pagination = pagination &
"span class=""disabled"">
Prev/span>
"
end if
'pages
if lastpage 7 + (adjacents * 2) then 'not enough pages to bother breaking it up
for counter = 1 to lastpage
if counter = page then
pagination = pagination &
"span class=""current"">
"&
counter&
"/span>
"
else
pagination = pagination &
"a href="""&
targetpage&
""&
"&
page="&
counter&
""">
"&
counter&
"/a>
"
end if
next
elseif lastpage >
= 7 + (adjacents * 2) then 'enough pages to hide some
'close to beginning only hide later pages
if page 1 + (adjacents * 3) then
for counter = 1 to (4 + (adjacents * 2))-1
if counter = page then
pagination = pagination &
"span class=""current"">
"&
counter&
"/span>
"
else
pagination = pagination &
"a href="""&
targetpage&
"&
page="&
counter&
""">
"&
counter&
"/a>
"
end if
next
pagination = pagination &
"..."
pagination = pagination &
"a href="""&
targetpage&
""&
"&
page="&
lpm1&
""">
"&
lpm1&
"/a>
"
pagination = pagination &
"a href="""&
targetpage&
""&
"&
page="&
lastpage&
""">
"&
lastpage&
"/a>
"
'in middle hide some front and some back
elseif lastpage - (adjacents * 2) >
page AND page >
(adjacents * 2) then
pagination = pagination &
"a href="""&
targetpage&
"&
page=1"">
1/a>
"
pagination = pagination &
"a href="""&
targetpage&
"&
page=2"">
2/a>
"
pagination = pagination &
"..."
for counter = (page - adjacents) to (page + adjacents)
if counter = page then
pagination = pagination &
"span class=""current"">
"&
counter&
"/span>
"
else
pagination = pagination &
"a href="""&
targetpage&
"&
page="&
counter&
""">
"&
counter&
"/a>
"
end if
next
pagination = pagination &
"..."
pagination = pagination &
"a href="""&
targetpage&
"&
page="&
lpm1&
""">
"&
lpm1&
"/a>
"
pagination = pagination &
"a href="""&
targetpage&
"page="&
lastpage&
""">
"&
lastpage&
"/a>
"
'close to end only hide early pages
else
pagination = pagination &
"a href="""&
targetpage&
"&
page=1"">
1/a>
"
pagination = pagination &
"a href="""&
targetpage&
"&
page=2"">
2/a>
"
pagination = pagination &
"..."
for counter = (lastpage - (1 + (adjacents * 3))) To lastpage
if counter = page then
pagination = pagination &
"span class=""current"">
"&
counter&
"/span>
"
else
pagination = pagination &
"a href="""&
targetpage&
"&
page="&
counter&
""">
"&
counter&
"/a>
"
end if
next
end if
end if
'nextPage button
if page counter - 1 then
pagination = pagination &
"a href="""&
targetpage&
"&
page="&
nextPage&
""">
Next/a>
"
else
pagination = pagination &
"span class=""disabled"">
Next/span>
"
end if
pagination = pagination &
"/div>
" &
vbnewline
end if
getPaginationString = pagination
end function
function Ceil( dividend, divider)
if (dividend mod divider) = 0 Then
Ceil = dividend / divider
ELSE
Ceil = Int(dividend / divider) + 1
End if
End function
'test script code
page = 1
if request("page") >
"" then
page=cint(request("page"))
end if
ps = getPaginationString(page, 1500, 15, 2, "pagination.asp?foo=bar")
Response.Write("br />
br />
br />
br />
br />
br />
br />
br />
"&
ps)
%>
完整打包代码:pagination(jb51.net).rar
看了有些头晕,还是看点简单的吧,asp与php思想差不多啊,参考了dedeCMS的修改方法
效果图:
核心代码:
复制代码 代码如下:
ps=cint(pageno)-2
if ps1 then
ps=1
end if
pe=clng(pageno)+5
if pe>
mpage then pe=mpage
for i=ps to pe
if i=pageno then
lb=lb&
"strong>
"&
i&
"/strong>
"
else
lb=lb&
"a href=""/list/list_"&
theid&
"_"&
i&
".htm"">
"&
i&
"/a>
"
end if
next
完整代码:
复制代码 代码如下:
pageno=cint(currentPage)
if cint(pageno)>
1 then
lb=lb&
"a href=/list/list_"&
theid&
"_1.htm title=""首页"">
首页/a>
"
else
lb=lb&
"a href='#'>
首页/a>
"
end if
if cint(pageno)>
1 and cint(pageno) then
lb=lb&
"a href=/list/list_"&
theid&
"_"&
pageno-1&
".htm title=""上页"">
上页/a>
"
else
lb=lb&
"a href='#'>
上页/a>
"
end if
ps=cint(pageno)-2
if ps1 then
ps=1
end if
pe=clng(pageno)+5
if pe>
mpage then pe=mpage
for i=ps to pe
if i=pageno then
lb=lb&
"strong>
"&
i&
"/strong>
"
else
lb=lb&
"a href=""/list/list_"&
theid&
"_"&
i&
".htm"">
"&
i&
"/a>
"
end if
next
if cint(pageno)mpage and mpage>
1 then
lb=lb&
"a href=/list/list_"&
theid&
"_"&
pageno+1&
".htm title=""下页"">
下页/a>
"
else
lb=lb&
"a href='#'>
下页/a>
"
end if
if cint(pageno) mpage then
lb=lb&
"a href=/list/list_"&
theid&
"_"&
mpage&
".htm title=""末页"">
末页/a>
"
end if
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ASP 数字分页效果代码
本文地址: https://pptw.com/jishu/604232.html
