ASP VBScript 分页函数 by Stabx, 第三版
正文:
QUOTE:
作用:
翻页导航, 显示数据请另外处理
说明:
简化简化再简化, 只需输入 '''/// call fPageCount(连接名,每页总数,开始数,号码导航链接数) ///'''
详细如: call fPageCount(rs,50,1,10)
本版实现了不需输入 URL 就可以自动获取 URL 的功能
文本框翻页功能也实现了智能化, 不需指定 URL, 前提是客户端没关闭 JS (相信不会有太多人跟我一样, 通常浏览网页都关闭 JS, 只在调试时使用)
本版尽可能的没用 联字符(&), 该字符很费时
导航预览:
首页 上十 上一 81 82 83 84 85 86 87 88 89 90 下一 下十 尾页 转到:___
50篇/页 88/831页 共 41503篇
shawl.qiu
2006-5-31
CODE:
' subject : ASP VBScript 分页函数 by Stabx, 第三版
'
' writer : Stabx<[email]shawl.qiu@gmail.com[/email]>
'
' blog : http://blog.csdn.net/btbtd / http://btbtd.exblog.jp/
'
' blog/site : Phoenix.GI - P.GI / / 绿色学院 - Green Institute
'
' date : 2006-5-31
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'简化简化再简化, 只需输入 '''/// call fPageCount(连接名,每页总数,开始数,号码导航链接数) ///'''
'本版实现了不需输入 URL 就可以自动获取 URL 的功能
'文本框翻页功能也实现了智能化, 不需指定 URL, 前提是客户端没关闭 JS (相信不会有太多人跟我一样, 通常浏览网页都关闭 JS, 只在调试时使用)
'本版尽可能的没用 联字符(&), 该字符很费时
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' 使用例子
'sample call '''// call fPageCount(rs,50,1,10) //'''
'sample call '''// call fPageCount(otherRSname,50,1,10) //'''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'参数使用说明
''''''''''''''''''''''''''''''''''''''
'rs | 数据库表连接名
'repeatnum | 每页显示记录总数
'startbynum | 从多少开始循环显示
'numlink | 显示数字链接导航数目
'''''''''''''''''''''
'全例: call fPageCount(rs,50,1,10)
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
function fPageCount(rs,repeatnum,startbynum,numlink)
toF_="首页"
toP10_=" 上十"
toP1_=" 上一"
toN1_=" 下一"
toN10_=" 下十"
toL_="尾页"
if not rs.eof then
rrc_=rs.recordcount
end if
if (not rs.eof or not rs.bof) and rrc_>repeatnum then '记录总数大于每页总数才显示分页链接
rqq_=request.ServerVariables("QUERY_STRING") '获取 URL 查询串, 并筛选所需
pv_=request("pageview") '翻页查询字符
if rqq_="" then
url="?pageview="
elseif instr(rqq_,"pageview")<>0 then
url="?"&replace(rqq_,"pageview="&pv_,"")&"pageview=" '不要试图把 pageview= 放进 replace 里
else
url="?"&replace(rqq_,"&pageview="&pv_,"")&"&pageview=" '同上
end if
pageview=CInt(Request("pageview")) '读取 URL 页号
rs.PageSize=repeatnum '定义每页显示记录数
If pageview<=0 Then pageview=1 '如果 pageview 小于或等于0, 返回值1
If pageview>rs.PageCount Then pageview=rs.PageCount ' 如果 pageview 大于分页总数, 返回分页末页值
rs.AbsolutePage=pageview '定义当前页码
cPageNo=rs.AbsolutePage
tpagecount=rs.pagecount
If cPageNo<1 Then cPageNo=1 '如果页数小于 1, 默认为 1; 当前页, cPageNo = Current Page NO.
If tPageCount<1 Then tPageCount=1
If cPageNo>tPageCount Then cPageNo=tPageCount
Dim NaviLength
NaviLength=numlink ' 显示数字链接数
Dim StartPage,EndPage ' 定义当前页, 开始页, 结束页
StartPage=(cPageNo/NaviLength)*NaviLength+1 '为开始页赋值
if pageview=1 then '判断是否首页, 如果是首页不添加链接,反之添加.
Response.Write "<font color=""#CCCCCC"">"
response.write toF_
response.write "</font> "
Else
Response.Write "<a href="""
response.write url
response.write "1#anchor"">"
response.write toF_
response.write "</a> "
End If
If (cPageNo Mod NaviLength)=0 Then StartPage=StartPage-NaviLength
EndPage=StartPage+NaviLength-1
If EndPage>tPageCount Then EndPage=tPageCount
If StartPage>1 Then '向后移动一分页, 十页为一分页, 并且以 1, 11, 21... 为每页的开始页数
Response.Write "<a href="""
response.write url
response.write (cPageNo-(cPageNo mod 10)-NaviLength+1)
response.write "#anchor"">"
response.write toP10_
response.write "</a> "
Else
Response.Write "<font color=""#CCCCCC"">"
response.write toP10_
response.write "</font> "
End If
If pageview <> 1 and pageview <>0 Then '后移一页
Response.Write "<a href="""
response.write url
response.write (pageview-1)
response.write "#anchor"">"
response.write toP1_
response.write "</a> "
Else
Response.Write "<font color=""#CCCCCC"">"
response.write toP1_
response.write "</font> "
End If
For startbynum=StartPage To EndPage
If startbynum=cPageNo Then
Response.Write "<b class=""gray"">"
response.write startbynum
response.write "</b> "
Else
Response.Write "<a href="""
response.write url
response.write startbynum
response.write "#anchor"">"
response.write startbynum
response.write "</a> "
End If
Next
If pageview <> rs.PageCount and pageview <>0 Then '前移一页
Response.Write " <a href="""
response.write url
response.write (pageview+1)
response.write "#anchor"">"
response.write toN1_
response.write "</a> "
Else
Response.Write "<font color=""#CCCCCC"">"
response.write toN1_
response.write "</font> "
End If
If EndPage<tpagecount Then '向前移动一分页, 十页为一分页, 并且以 1, 11, 21 为每页的开始页数
Response.Write " <a href="""
response.write url
response.write (cPageNo-(cPageNo mod 10)+NaviLength+1)
response.write "#anchor"">"
response.write toN10_
response.write "</a> "
Else
Response.Write " <font color=""#CCCCCC"">"
response.write toN10_
response.write "</font> "
End If
if rs.PageCount<>pageview then '判断是否尾页
Response.Write "<a href="""
response.write url
response.write tpagecount
response.write "#anchor"">"
response.write toL_
response.write "</a>"
Else
Response.Write "<font color=""#CCCCCC"">"
response.write toL_
response.write "</font>"
End If
response.write " 转到:<input TYPE=""text"" class=""jumpinput"" onMouseMove=""this.focus();this.select();"" οnkeypress=""ckKeyPress(this.value);"" ><br/>"
'页面信息
response.write repeatnum
response.write "篇/页 "
response.write cPageNo
response.write "/"
response.write tPageCount
response.write "页 共 "
response.write rrc_
response.write "篇<script>function ckKeyPress(jumpto){if(window.event.keyCode==13) {window.location.href="""
response.write url
response.write """+jumpto+""#anchor""}}</script>"
elseif (not rs.eof or not rs.bof) and rrc_<=repeatnum then
response.write "<div class=font12px>共 "
response.write rrc_
response.write " 篇</div>"
end if
end function
ASP VBScript 分页函数 by Stabx, 第三版相关推荐
- Web程序设计—ASP.NET实用网站开发(第三版)课后习题答案
Web程序设计-ASP.NET实用网站开发(第三版)课后习题答案 (沈士根.叶晓彤编著-清华大学出版社) 第一章 一.填空题: 1.NET Framework 主要包括 (CLR)和(.NET Fra ...
- 《精通 ASP.NET MVC 3 框架(第三版)》----第2章 准备工作 2.1 准备工作站
本节书摘来自异步社区<精通 ASP.NET MVC 3 框架(第三版)>一书中的第2章,第1节,作者: [美]Adam Freeman , Steven Standerson,译者: 林逸 ...
- asp数据分页显示技术(上下页版)
<%set rs=server.CreateObject("adodb.recordset") sql="select * from [student_admin] ...
- 微积分(第三版)经济应用数学基础(一) 赵树嫄 编 中国人民大学出版社
微积分(第三版)经济应用数学基础(一) 来源:http://www.daanbar.com/book-info/2568.html 赵树嫄 编 中国人民大学出版社 第1章 函数 第2章 极限与连续 第 ...
- 创建一个ASP通用分页类(完整版)
从开始学习到使用ASP到现在也写了不少程序了,最令人头痛的是写数据分页,每次都是由于几个变量名或几个参数的不同,因而需要每次都写哪一段冗长而又繁杂的分页代码,代码长了使得程序的可读性变差,容易出差,调 ...
- python之scrapy:攻克技术点ASP.NET分页处理、request和response传参、pipeline区分传来Items
上面一篇介绍了scrapy抓取的大概架构,此篇文章针对一些技术问题进行展开说明. 一.如何处理ASP.NET分页 我们还是深圳房地产信息系统为例, 因为之前一直是写ASP.NET的,.NET很多控件都 ...
- ASP系列VB函数大全
ASP系列VB函数大全 ASP函数大全 ASP函数与VBSCRIPT类似,以下举一些常用的函数 Array() 函数返回一个数组 表达式 Array(list) 允许数据类型: 字符,数字均可 实例: ...
- 笔记整理 asp + vbscript篇
一.前言 想要找一个知识点,居然找不到,有点郁闷,故而把以前写的笔记整理分类.败笔在于没有任何条理,标题取的也不是很恰当,不能使我看到标题,就知道这份笔记的主要内容是什么.故而简述分类 二.整理 1. ...
- page分页php,Page分页函数
提供一款实例的分类函数,有需要的朋友可以参考一下.<?php教程 // page分页函数 $page = $_get["page"]; function page($rows ...
最新文章
- 《数据科学:R语言实现》——2.7 爬取网络数据
- python骨灰教学_python+mongodb+flask的基本使用
- python os.system 不打印_Python初体验之我爱你
- 【模板引擎】Springboot整合ThymeleafThymeleaf基本语法
- andriod 继承view定义自己的形状
- dl,dt,dd怎么用
- 阿里达摩院发布2019年十大科技趋势
- vue.js将本地文件上传到ftp服务器,vue项目使用FTP传输部署项目服务器,node命令编写...
- 《分布式系统模式》中文版
- GNOME 2.18.2
- unity如何实现图片透视_如何用java实现图片与base64转换
- CDA数据分析师-LEVEL I考试-分享
- Fiddler抓包没有网!
- 麦克斯韦方程组(彩图完美解释版)
- echart 图谱_echart——关系图graph详解
- Android webview 下载文件(文件名,扩展名)
- 1GB等于多少MB?
- 探索:制药厂系统网络时钟同步(NTP时间同步服务器)
- 中枢神经的运动控制理论,神经网络运动控制方式
- 节奏感:出色平面设计的必备要素