asp自定义分页

来源:百度知道 编辑:UC知道 时间:2024/06/15 17:09:31
if (currentpage-1)*MaxPerPage>totalput then
if(totalput mod maxperpage=0) then
currentpage=totalput \ maxperpage
else
currentpage=totalput \ maxperpage
end if

其中为什么要 currentpage-1 呢?希望懂的来讲讲
该分页文件的原理是什么

因为currentpage是一个变量,用他来计数的,每翻一页相应的currentpage的数要减少一的,所以要减1的。

你在写分页的时候需要定义几个变量来存储信息
1、总的记录数
2、单页要显示的记录数
3、分成的页面的数量
4、当前页面的页号
5、偏移量

下面来详细分析一下这几个变量

1、总的记录数
这个变量的值来源于系统,也就是说实际你所拥有的纪录的总数,这个没有什么好说的,可以从数据库或文本统计来的。
2、单页要显示的记录数
这个变量的值来源于用户,值的多少是由用户所给的,也没有什么好说的
3、分成的页面的数量
这个变量的值是需要计算的。计算的方法是(计算的方法有2种)

方法一:

情况一:
如果:(总的记录数%单页要显示的记录数)=0
那么:分成的页面的数量=总的记录数/单页要显示的记录数

举个例子,比如你有10条纪录,想要每一个页面5条纪录,那么分成的页面数量就是10/5=2

情况二:
如果:(总的记录数%单页要显示的记录数)!=0
那么:分成的页面的数量=[(总的记录数-(总的记录数%单页要显示的记录数))/单页要显示的记录数]+1

举个例子,比如你有11条纪录,想要每一个页面5条纪录,那么分成的页面数量就是:[(11-(11%5))/5]+1=3

方法二:
可以把方法一中的两种情况整合在一起
分成的页面的数量=取整数部分((总的记录数+单页要显示的记录数-1)/单页要显示的记录数)

来验证一下:
(10+5-1)/5=2.8 ,2.8取整数就是2, 所以分成2页
(11+5-1)/5=3,3取整数还是3,所以分成3页
4、当前页面的页号
初始值设为1,在翻页的时候,当向前翻页的时候可以把值加1以后传递,当向后翻页把值减1后传递
5、偏移量
偏移量=当前页号*单页显示的记录数
偏移量主要是用来取纪录的