asp如何分页

作者&投稿:邓霄 (若有异议请与网页底部的电邮联系)
关于ASP的分页~

用pageSize来确定循环次数的,循环来输出记录时直到pageSize=0时停止,比如要输出20个记录,则从20倒着计算,到0时停止,共输出20条记录.当然也可以让pageSize=0来增长,即pageSize=pageSize+1,同时改循环判断if (pageSize<=0)then exit do end if

if (pageSize>pSize)then exit do end if
就行.
至于为什么要加上if Not IsNumeric(currentPage) then的判断,是防止传递的参数出现非数字值而出现错误或导致得出不正确的答案.你试试就知道的.

把两个recordset对象都定义在分页代码里面不就行了

ADO 存取数据库时如何分页显示

什么是 ADO 存取数据库时的分页显示?如果你使用过目前众多网站上的电子公告板程序的话,那你应该会知道电子公告板程序为了提高页面的读取速度,一般不会将所有的帖子全部在一页中罗列出来,而是将其分成多页显示,每页显示一定数目的帖子数,譬如 20 条。想不想了解如何实现分页显示?请看本文!

《动态网站设计十八般武艺 --ASP 篇》一文从第一期至今已和朋友们一起度过了大半个年头,相信通过在这一段时间中的学习、实践到再学习、再实践,大家已经能够熟练运用 ASP 的内建对象、 ActiveX 组件去编写一些基本的 ASP 应用程序。从我收到的朋友们的来信中可以明显的感觉到,大家的 ASP 功力正不断地提升。最近很多朋友来信希望我写一些 ASP 在现实运用中的实例。因此,从本期开始我决定将《动态网站设计十八般武艺 --ASP 篇》的定位从介绍和学习 ASP 基础知识转向到 ASP 实际运行的探讨和深化。应朋友们的要求,在本期中我将给大家着重谈一谈“ADO 存取数据库时如何分页显示”的问题。
什么是 ADO 存取数据库时的分页显示?如果你使用过目前众多网站上的电子公告板程序的话,那你应该会知道电子公告板程序为了提高页面的读取速度,一般不会将所有的帖子全部在一页中罗列出来,而是将其分成多页显示,每页显示一定数目的帖子数,譬如 20 条。这就是数据库查询的分页显示,如果你还不明白,去看看 yahoo 等搜索引擎的查询结果就会明白了。

那么究竟如何才能做到将数据库的查询结果分页显示呢?其实方法有很多,但主要有两种:

一、将数据库中所有符合查询条件的记录一次性的都读入 recordset 中,存放在内存中,然后通过 ADO Recordset 对象所提供的几个专门支持分页处理的属性: PageSize( 页大小 )、 PageCount( 页数目 ) 以及 AbsolutePage( 绝对页 ) 来管理分页处理。

二、根据客户的指示,每次分别从符合查询条件的记录中将规定数目的记录数读取出来并显示。

两者的主要差别在于前者是一次性将所有记录都读入内存然后再根据指示来依次做判断分析从而达到分页显示的效果,而后者是先根据指示做出判断并将规定数目的符合查询条件的记录读入内存,从而直接达到分页显示的功能。

我们可以很明显的感觉到,当数据库中的记录数达到上万或更多时,第一种方法的执行效率将明显低于第二种方法,因为当每一个客户查询页面时都要将所有符合条件的记录存放在服务器内存中,然后在进行分页等处理,如果同时有超过 100 个的客户在线查询,那么 ASP 应用程序的执行效率将大受影响。但是,当服务器上数据库的记录数以及同时在线的人数并不是很多时,两者在执行效率上是相差无几的,此时一般就采用第一种方法,因为第一种方法的 ASP 程序编写相对第二种方法要简单明了得多。

在这里作者就以我们常见的 ASP BBS 程序为例,来给大家分析一下如何在 BBS 程序里实现分页显示功能,由于我们一般使用的 BBS 程序的数据库记录数和同时访问的人数都不会太多,所以以下程序实例是使用的先前所介绍的第一种分页显示方法。

进行 ADO 存取数据库时的分页显示,其实就是对 Recordset 的记录进行操作。所以我们首先必须了解 Reordset 对象的属性和方法:
BOF 属性:目前指标指到 RecordSet 的第一笔。

EOF 属性:目前指标指到 RecordSet 的最后一笔。

Move 方法:移动指标到 RecordSet 中的某一条记录。

AbsolutePage 属性:设定当前记录的位置是位于哪一页 AbsolutePosition 属性:目前指标在 RecordSet 中的位置。

PageCount 属性:显示 Recordset 对象包括多少“页”的数据。

PageSize 属性:显示 Recordset 对象每一页显示的记录数。

RecordCount 属性:显示 Recordset 对象记录的总数。

下面让我们来详细认识一下这些重要的属性和方法

一、 BOF 与 EOF 属性

通常我们在 ASP 程序中编写代码来检验 BOF 与 EOF 属性,从而得知目前指标所指向的 RecordSet 的位置,使用 BOF 与 EOF 属性,可以得知一个 Recordset 对象是否包含有记录或者得知移动记录行是否已经超出该 Recordset 对象的范围。

如: < % if not rs.eof then ... %>

< % if not (rs.bof and rs.eof) %>

若当前记录的位置是在一个 Recordset 对象第一行记录之前时, BOF 属性返回 true,反之则返回 false。

若当前记录的位置是在一个 Recordset 对象最后一行记录之后时, EOF 属性返回 true,反之则返回 false。

BOF 与 EOF 都为 False:表示指标位于 RecordSet 的当中。

BOF 为 True:目前指标指到 RecordSet 的第一笔记录。 EOF 为 True:目前指标指到 RecordSet 的最后一笔记录。

BOF 与 EOF 都为 True:在 RecordSet 里没有任何记录。

二、 Move 方法

您可以用 Move 方法移动指标到 RecordSet 中的某一笔记录,语法如下:

rs.Move NumRecords,Start

这里的“rs”为一个对象变量,表示一个想要移动当当前记录位置的 Recordset 对象;“NumRecords”是一个正负数运算式,设定当前记录位置的移动数目;“start”是一个可选的项目,用来指定记录起始的标签。

所有的 Recordset 对象都支持 Move 方法,如果 NumRecords 参数大于零,当前记录位置向末尾的方向移动;如果其小于零,则当前记录位置向开头的方向移动;如果一个空的 Recordset 对象调用 Move 方法,将会产生一个错误。

MoveFirst 方法:将当前记录位置移至第一笔记录。

MoveLast 方法:将当前记录位置移至最后一笔记录。

MoveNext 方法:将当前记录位置移至下一笔记录。 MovePrevious 方法:将当前记录位置移至上一笔记录。

Move [n] 方法:移动指标到第 n 笔记录, n 由 0 算起。

三、 AbsolutePage 属性

AbsolutePage 属性设定当前记录的位置是位于哪一页的页数编号;使用 PageSize 属性将 Recordset 对象分割为逻辑上的页数,每一页的记录数为 PageSize( 除了最后一页可能会有少于 PageSize 的记录数 )。这里必须注意并不是所有的数据提供者都支持此项属性,因此使用时要小心。

与 AbsolutePosition 属性相同, AbsolutePage 属性是以 1 为起始的,若当前记录为 Recordset 的第一行记录, AbsolutePage 为 1。可以设定 AbsolutePage 属性,以移动到一个指定页的第一行记录位置。

四、 AbsolutePosition 属性

若您需要确定目前指标在 RecordSet 中的位置,您可以用 AbsolutePosition 属性。

AbsolutePosition 属性的数值为目前指标相对於第一笔的位置,由 1 算起,即第一笔的 AbsolutePosition 为 1。

注意 , 在存取 RecordSet 时,无法保证 RecordSet 每次都以同样的顺序出现。

若要启用 AbsolutePosition,必须先设定为使用用户端 cursor( 指针 ), asp 码如下:

rs2.CursorLocation = 3

五、 PageCount 属性

使用 PageCount 属性,决定 Recordset 对象包括多少“页”的数据。这里的“页”是数据记录的集合,大小等于 PageSize 属性的设定,即使最后一页的记录数比 PageSize 的值少,最后一页也算是 PageCount 的一页。必须注意也并不是所有的数据提供者都支持此项属性。

六、 PageSize 属性

PageSize 属性是决定 ADO 存取数据库时如何分页显示的关键,使用它就可以决定多少记录组成一个逻辑上的“一页”。设定并建立一个页的大小,从而允许使用 AbsolutePage 属性移到其它逻辑页的第一条记录。 PageSize 属性能随时被设定。

七、 RecordCount 属性

这也是一个非常常用和重要的属性,我们常用 RecordCount 属性来找出一个 Recordset 对象包括多少条记录。如: < % totle=RS.RecordCount %>

在了解了 Recordset 对象的以上属性和方法后,我们来考虑一下,如何运用它们来达到我们分页显示的目的。首先,我们可以为 PageSize 属性设置一个值,从而指定从记录组中取出的构成一个页的行数;然后通过 RecordCount 属性来确定记录的总数;再用记录总数除以 PageSize 就可得到所显示的页面总数;最后通过 AbsolutePage 属性就能完成对指定页的访问。好象很并不复杂呀,下面让我们来看看程序该如何实现呢?

我们建立这样一个简单的 BBS 应用程序,它的数据库中分别有以下五个字段:“ID”,每个帖子的自动编号;“subject”,每个帖子的主题;“name”,加帖用户的姓名;“email”,用户的电子邮件地址;“postdate”,加帖的时间。数据库的 DSN 为“bbs”。我们将显示帖子分页的所有步骤放在一个名为“ShowList()”的过程中,方便调用。程序如下:

'----BBS 显示帖子分页----
< % Sub ShowList() %>
< %
PgSz=20 '设定开关,指定每一页所显示的帖子数目,默认为20帖一页
Set Conn = Server.CreateObject("ADODB.Connection")
Set RS = Server.CreateObject("ADODB.RecordSet")
sql = "SELECT * FROM message order by ID DESC"
'查询所有帖子,并按帖子的ID倒序排列
Conn.Open "bbs"
RS.open sql,Conn,1,1
If RS.RecordCount=0 then
response.write "< P>< center>对不起,数据库中没有相关信息!< /center>< /P>"
else
RS.PageSize = Cint(PgSz) '设定PageSize属性的值
Total=INT(RS.recordcount / PgSz * -1)*-1 '计算可显示页面的总数
PageNo=Request("pageno")
if PageNo="" Then
PageNo = 1
else
PageNo=PageNo+1
PageNo=PageNo-1
end if
ScrollAction = Request("ScrollAction")
if ScrollAction = " 上一页 " Then
PageNo=PageNo-1
end if
if ScrollAction = " 下一页 " Then
PageNo=PageNo+1
end if
if PageNo < 1 Then
PageNo = 1
end if
n=1
RS.AbsolutePage = PageNo
Response.Write "< CENTER>"
position=RS.PageSize*PageNo
pagebegin=position-RS.PageSize+1
if position < RS.RecordCount then
pagend=position
else
pagend= RS.RecordCount
end if
Response.Write "< P>< font color='Navy'>< B>数据库查询结果:< /B>"
Response.Write "(共有"&RS.RecordCount &"条符合条件的信息,显示"&pagebegin&"-"&pagend&")< /font>< /p>"
Response.Write "< TABLE WIDTH=600 BORDER=1 CELLPADDING=4 CELLSPACING=0 BGCOLOR=#FFFFFF>"
Response.Write "< TR BGCOLOR=#5FB5E2>< FONT SIZE=2>< TD>< B>主题< /B>< /TD>< TD>< B>用户< /B>< /TD>< TD>< B>Email< /B>< /TD>< TD>< B>发布日期< /B>< /TD>< /FONT>< TR BGCOLOR=#FFFFFF>"
Do while not (RS is nothing)
RowCount = RS.PageSize
Do While Not RS.EOF and rowcount > 0
If n=1 then
Response.Write "< TR BGCOLOR=#FFFFFF>"
ELSE
Response.Write "< TR BGCOLOR=#EEEEEE>"
End If
n=1-n %>
< TD>< span style="font-size:9pt">< A href='view.asp?key=< % =RS("ID")%>'>< % =RS("subject")%>< /A>< /span>< /td>
< TD>< span style="font-size:9pt">< % =RS("name")%>< /A>< /span>< /td>
< TD>< span style="font-size:9pt">< a href="mailto:< % =RS("email")%>">< % =RS("email")%>< /a>< /span> < /TD>
< TD>< span style="font-size:9pt">< % =RS("postdate")%>< /span> < /td>
< /TR>
< %
RowCount = RowCount - 1
RS.MoveNext
Loop
set RS = RS.NextRecordSet
Loop
Conn.Close
set rs = nothing
set Conn = nothing
%>
< /TABLE>
< FORM METHOD=GET ACTION="list.asp">
< INPUT TYPE="HIDDEN" NAME="pageno" VALUE="< % =PageNo %>">
< %
if PageNo > 1 Then
response.write "< INPUT TYPE=SUBMIT NAME='ScrollAction' VALUE=' 上一页 '>"
end if
if RowCount = 0 and PageNo < >Total then
response.write "< INPUT TYPE=SUBMIT NAME='ScrollAction' VALUE=' 下一页 '>"
end if
response.write "< /FORM>"
End if
%>
< % End Sub %>

相信大家都应该能完全读懂上面的程序,因此作者就不在此详细解释了。值得注意的是在这段程序中运用了一个小技巧 < INPUT TYPE="HIDDEN" NAME="pageno" VALUE="< % =PageNo %>">,这是用来在每次调用该 ASP 文件时传递数据的“暗道”,由于我们需要在每次调用程序时传递代表当前页码的参数,可能大家会想到使用 session,但是从节省系统资源和通用性来讲,用这样一个隐藏的 form 来传递数据将会达到更好的效果。

好了,又到了说再见的时候了,如果你没完全看懂本篇中所列的程序,那你必须加把油,看一看 VbScript 的语法;如果你还有某些疑问,可以“妹儿”我,我将尽力解答;如果你有什么更好的建议也千万要来信告诉我哦 :)

<table width=630 border=0>
<tr class=t1>
<td width=30 align=center bgcolor=#cccccc class=downbg>ID</td>
<td width=100 align=center bgcolor=#cccccc class=downbg>日期</td>
<td width=100 align=center bgcolor=#cccccc class=downbg>时间</td>
<td width=100 align=center bgcolor=#cccccc class=downbg>科室</td>
<td width=300 align=center bgcolor=#cccccc class=downbg>事项</td>
</tr>
<th height=10>
<%
if not isempty(request("page")) and request("page")<>"" then
currentPage=cint(request("page"))
else
currentPage=1
end if
MaxPerPage=40
if zyy_key="" then
Set zyyyw=server.CreateObject ("adodb.recordset")
sql="select * from zyy order by zyy_id desc"
zyyyw.Open sql,conn,1,1
else
Set zyyyw=server.CreateObject ("adodb.recordset")
sql="select * from zyy where "&zyy_cond&" like '%"&zyy_key&"%' order by zyy_id desc"
zyyyw.Open sql,conn,1,1
end if
if not zyyyw.EOF then
zyyyw.PageSize=maxperpage
mpage=zyyyw.PageCount
totalput=zyyyw.RecordCount
if currentpage<1 then
currentpage=1
end if
zyyyw.Move (currentpage-1)*maxperpage
end if
if zyyyw.EOF and zyyyw.bof then
response.Write ("暂时没有记录!")
%>
<%
else
k=(totalput-maxperpage*(currentpage-1))+1
do while not zyyyw.EOF
k=k-1
ii=ii+1
%>

<tr class=t2><td width=30 class=downbg align=center><%=zyyyw("zyy_id")%></td>
<td width=100 class=downbg align=center><%=zyyyw("zyy_date")%></td>
<td width=100 class=downbg align=center><%=zyyyw("zyy_time")%></td>
<td width=100 class=downbg><%=zyyyw("zyy_room")%></td>
<td width=300 class=downbg><%=zyyyw("zyy_work")%></td></tr>

<% i=i+1
if i>=maxperpage then exit do
zyyyw.MoveNext
loop
end if
%>

</table>
<table width=630 border=0>
<tr><td width=370 align=center class=t2>
<form name="form1" method="post" action="index.asp">
<table width=98% border="0" class=t2>
<tr>
<td>请输入日期(格式:2006-04):<input name="key" type="text" id="key" size="10">
按 <select name="cond" id="cond">
<option value="zyy_date" selected>日期</option>
</select><input type="submit" name="Submit" value="查询"></td></tr></table>
</form>
</td>
<td width=260 align=center class=t2>
<a class=a1 href="javascript:location.reload()">刷新</a> 记录总数:<%=zyyyw.recordcount%> 每页<%=MaxPerPage%>条
<%pageno=currentPage%>
<%if cint(pageno)>1 then%>
<a href="?page=1" title="最前页">
<%end if%>
<font face="Webdings">9</font></a> 
<%if cint(pageno)>1 then%>
<a href=?page=<%=pageno-1%> title="上一页">
<%end if%>
<font face="Webdings">7</font></a>
<%if cint(pageno)< mpage then%>
<a href=?page=<%=pageno+1%> title="下一页">
<%end if%>
<font face="Webdings">8</font></a> 
<%if cint(pageno)< mpage then%>
<a href="?page=<%=mpage%>" title="最后页">
<%end if%>
<font face="Webdings">:</font></a>

</td>
</tr>
</table>

’做好数据库连接后,直接插入下列代码,稍微修改即可,把红色字符替换即可
<%
Dim i,intPage,page,pre,last,filepath
set conn = server.createobject("adodb.connection")
conn.open 数据库连接字符串

set RS1=server.CreateObject("adodb.Recordset")
sql="SELECT * FROM 数据库表名"

RS1.PageSize = 15
RS1.CursorLocation = 3
RS1.Open sql,conn,0,2,

if RS_Computer.PageCount<>0 then
%>
pre = true
last = true
page = trim(Request.QueryString("page"))

if len(page) = 0 then
intpage = 1
pre = false
else
if cint(page) =< 1 then
intpage = 1
pre = false
else
if cint(page) >= RS1.PageCount then
intpage = RS1.PageCount
last = false
else
intpage = cint(page)
end if
end if
end if
if not RS1.eof then
RS1.AbsolutePage = intpage
end if

for i=1 to RS1.PageSize
if RS1.EOF or RS1.BOF then exit for
%>

'要显示的内容....
<%
RS1.movenext
next
%><table width="558" border="1" align="center" cellpadding="2" cellspacing="2" borderColorLight=#808080 borderColorDark=#ffffff >
<tr>
<%if RS1.pagecount > 0 then%>
<td width="180" align="left">当前页<%=intpage%>/<%=RS1.PageCount%></td>
<%else%>
<td width="100" align="left">当前页0/0</td><%end if%>
<td width="240" align="right"> <a href=页面名称.asp?page=1>首页</a>|
<%if pre then%>
<a href=页面名称.asp?page=<%=intpage -1%>>上页</a>| <%end if%>
<%if last then%>
<a href=页面名称.asp?page=<%=intpage +1%>>下页</a> |<%end if%>
<a href=页面名称.asp?page=<%=RS1.PageCount%>>尾页</a>|转到第
<select name="sel_page" onchange="javascript:location=this.options[this.selectedIndex].value;">
<%
for i = 1 to RS1.PageCount
if i = intpage then%>
<option value="页面名称.asp?page=<%=i%>" selected><%=i%></option>
<%else%>
<option value="页面名称.asp?page=<%=i%>"><%=i%></option>
<%
end if
next
%>
</select>页</font>
</td>
</tr>

<%else%>
<table width="560" align="center">
<tr>
<td><%response.Write("对不起,未发现相关数据")%></td>
</tr>
</table>
<%end if%>


SQL里存储过程分页问题!急!急!
2.SQL SERVER 2005中的TOP分页 CREATE PROCEDURE [dbo].[Zhzuo_GetItemsPage2005TOP]PageIndex INT,PageSize INT,RecordCount INT OUT,PageCount INT OUT AS \/*获取记录数*\/ SELECT @RecordCount = COUNT(*) FROM Production.Product \/*计算页面数据*\/ SET @PageCount = CEILING(@RecordCount * ...

怎么给table分页?c#语言,不要用控件,要Ajax的,数据库sql的。
分2个步骤:第一:你需要在数据库中自己写一个分页的SQL 存储过程,返回当前页的数据 第二:你需要在C#调用存储过程返回的数据,给html 以下是我自己写的一段分页内容,你可以借鉴下:CREATE procedure [dbo].[SP_pagination](@sqlstr nvarchar(4000), --查询字符串 自己拼写的sql语句@pageindex ...

求问计算机组成原理中一些名词的解释:SP,LV,CPP,TOS,FIFO,分段,分页,中...
SP = stack pointe 堆栈指针,总是指向栈顶元素的下一个位置。所以数据入栈的时候,先压栈,栈顶指针再增加一。出栈的时候栈顶指针先减去一,再弹出数据。--- CPP是程序设计语言C++的另一种书写形式 它是“C Plus Plus”的简称。是继C语言之后又一种计算机编程语言,C++编程语言同时支持所有的C语...

mp2555sp打印机双面扫描如何跳过空白页
1、首先按“Ctrl+H”打开查找替换窗口,单击“更多”或“高级”。2、其次在“特殊格式”中选择“手动分页符”。3、最后然点击“全部替换”就跳过所有空白页了。

asp.net长篇文章怎么实现分页
为文章分页就可以用split()方法进行拆分显示了;例如:string[] contentArray = content.Split(new string[] { "hongtao" }, StringSplitOptions.RemoveEmptyEntries);我这里的content变量就是你用来存储从数据库中读取到的文章内容的变量 怎么样?对你是否有帮助,如果有问题可以Hi我袄 最后,别忘了 要给...

MP3055sp打印机双面复印怎么设置?
1、打开打印机按“属性”2、在打印机属性中安双面打印选项下拉菜单 3、纸张纵向,选择“双面打印,长边装订”;纸张横向,选择“双面打印,短边装订”,按确定 4、打印

在C#中如何实现分页提取数据库的数据?急用,哪位高手帮帮忙!
如果是sql 2005以上的话就更容易了。select * from (select *, ROW_NUMBER() over(order by ID) as rowNum from 表名 ) as T1 where rowNum between 50 and 60;另外给一个现成的分页存储过程,你可以参考或直接使用:Create PROC [dbo].[P_GetPage]TableName VARCHAR(200), --表名 Fie...

asp如何调用存储过程实现分页!十万火急~~
exec sp_executesql @sqls,N'@a int output',@CountRows output ---返回总页数 if @CountRows <= @PageSize set @CountPage = 1 else begin set @CountPage = @CountRows\/@PageSize if (@CountRows%@PageSize) > 0 set @CountPage = @CountPage + 1 end return GO 在ASP里调用:page...

如何利用 vc ado 连接 Sql Server2005 实现分页存储过程
sPkey nvarchar(50),iPageIndex int,iPageSize int,iRecordCount int OUTPUT,sOutsql nvarchar(4000) OUTPUT )--WITH ENCRYPTION AS BEGIN SET NOCOUNT ON DECLARE @iRC int, @sSQL nvarchar(4000), @sW nvarchar(1000), @sOB nvarchar(1000), @sT nvarchar(100)SELECT @iRC = @iRecordCount, ...

会javascript和sqlserver的进(jsp)!!
分页方案三:(利用SQL的游标存储过程分页)create procedure XXXXXX sqlstr nvarchar(4000), --查询字符串 currentpage int, --第N页 pagesize int --每页行数 as set nocount on declare @P1 int, --P1是游标的id rowcount int exec sp_cursoropen @P1 output,@sqlstr,@scrollopt=1,@ccopt=1...

东辽县17722207164: 在asp网页中怎么分页 -
旁泻清开: 可以使用下面的分页函数<%'一个分页函数'PID 页面中的其它传参连接'page 要显示的页码'Vcount 总记录数'Pnum 每页记录数'className 超连接样式public function ThePage(Pid,page,Vcount,Pnum,className) dim show page = int(page) Pcount ...

东辽县17722207164: 在ASP中如何让其分页 -
旁泻清开: 那就判断当前页是第几页,如果是1到4的话就显示上一页 [1] [2] [3] [4] [5] 下一页,如果是5到9的话就显示上一页 [6] [7] [8] [9] [10] 下一页,如果是10到14的话就显示上一页 [11] [12] [13] [14] [15] 下一页……假设当前页是p,除以5,得到k,k取整数部分得到i,然后i*5,得到q,那么你中间所要的5个分页就是q+1,q+2,q+3,q+4,q+5假设现在是第83页,那么p=83,k=16.6,i=16,q=80,那么你中间的5页就是81,82,83,84,85具体我也没写过,应该要写个函数,把p传进去得到q,然后你要用的就是q+1,q+2,q+3,q+4,q+5了

东辽县17722207164: ASP的分页如何弄?
旁泻清开: 手动写代码,对RS设置每页记录数如rs.PageSize=10,然后通过设置当前所在页数来获取当前页面的记录rs.AbsolutePage=1.这里有很多详细的教程你可以看下哦~~ http://www.21shipin.com/jc_423.shtml

东辽县17722207164: asp页面如何制作分页
旁泻清开: <% dim i,intPage,page,pre,last,filepath set rs = server.CreateObject("adodb.recordset") sql="select * from user order by user_ID desc" rs.PageSize = 2 ' //(这里设定每页显示的记录数 rs.CursorLocation = 3 rs.Open sql,conn,0,2,1 '//('这里执...

东辽县17722207164: 请问ASP分页程序怎么做啊? -
旁泻清开: //先把数据表中的记录读到结果集rs中,这个就不赘述了,以下是分页部分.rs.pagesize=10 //每页显示10条记录page=cint(request("page")) //接收页码//以下处理无效页码if page<1 then //在asp中,空值比1小 page=1end ifif page>rs.pagecount ...

东辽县17722207164: asp 分页怎么做?
旁泻清开: 上一条:"&rs("title")&"") end if %> 下一条:"&rs("title")&"") end if %>

东辽县17722207164: asp如何对一段文字进行分页显示?
旁泻清开: 1.这是第一种解决方法,也是最简单的方法之一,只需要在后台插入分页符就行.<% '处理接收分页得参数,显示页数 也就默认第一页 aa="sdfsdfsdgf|||gfdgdfgdfsd|||fdfsdfdfdfd" if Request("page")="" then pageNum=0 '下面就是page接参...

东辽县17722207164: asp 分页代码怎么写
旁泻清开: '==============分页函数==================== '采用ASP编写,iCount数据记录数,pagecount总页数,page当前页数 function PageControl(iCount,pagecount,page) dim query, url, x, temp ,action,check50,check100,check300,check500,...

东辽县17722207164: asp如何给长文章分页 -
旁泻清开: 在要设置分页的地方写一个 如:dddddddd{nextpage}sssssssss 然后就用 content=split(contents,"{nextpage}")再用 for i=0 to ubound content response.write content(i) next进行分页

东辽县17722207164: 请问ASP中分页都是怎么实现的啊 望高手请教谢谢 -
旁泻清开: 有属性自动的,只要设置好就行了,右键DataGrid-》属性生成器-》分页,设置好之后,然后在属性,事件PageIndexChanged双击到代码页面private void dgpdetail_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e) { DataGrid1.CurrentPageIndex=e.NewPageIndex; }就这样,分页搞掂啦

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网