ASP如何实现网页上内容过多时,分页显示~?

huangbq1 2008-01-07 10:08:18
请问一下各位大侠,我用的是ACCESS数据库
用ASP编写的.
我想问一下,当我从数据库读多一条记录,在页面显示时,内容太长,页面拉的很长,我想让他分开几页显示,要如何完成.里面包有图片,表格~
我要的是一条记录的分页显示,不是多记录的分页~多条记录实现分页我知道了,

可是 单 条记录,也就是说只有一条记录让他分页怎么实现啊,而且这条记录里包含了图片跟表格~

最好发一下代码,谢谢,
要求:页面的内容由后台自己手动添加,,前台显示时,实现分页~

请各位大侠帮忙解决一下,谢谢~~

...全文
966 30 打赏 收藏 转发到动态 举报
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
lio110 2008-01-09
  • 打赏
  • 举报
回复
其实就用分页来处理的,我以前有过你这样的代码给你找了份自己去研究吧。rs.Pagesize=12控制一页显示多少条,至于你需要怎么去排版那你自己按自己要求去做吧!
<% set rs=server.CreateObject("adodb.recordset")
rs.CursorType=1
rs.Open "select * from cp",conn

on error resume next
rs.Pagesize=12
dim curpage
if request("curpage")="" then
curpage=1
else
curpage=cint(request("curpage"))
end if
if cint(curpage)<1 then curpage=1
if cint(curpage)>rs.PageCount then curpage=rs.PageCount
rs.AbsolutePage =cint(curpage)
dim num
%>
<% If rs.eof and rs.bof Then %>
<div style="text-align:center;border-bottom: 1px dotted #000000;width:526px">
<div style="height:5px "></div>
暂时没有发布此类信息!!</div>
<% End If %>
<%
while not rs.eof and num<rs.pagesize
%>
<table cellspacing="0" style="float:left;width:131px;height:177px;">
<tr>
<td height="4"><img src="images/show_1.gif" width="131" height="4"></td>
</tr>
<tr>
<td height="145" align="center" valign="middle" background="images/show_2.gif"><a href="cpshow.asp?id=<%=rs("id")%>"><img src="<%= rs("imges") %>" alt="点击查看【<%=rs("name")%>】详情" width="119" height="143" border="0"></a></td>
</tr>
<tr>
<td height="28" background="images/show_3.gif"><div align="center"><%= rs("name")%></div></td>
</tr>
</table>
<%

num=num+1
rs.movenext
wend

%> <br>
<table width="100%">
<tr>
<td>
<div align="center">----------------------------------------------------------------------------<br>
共<%= rs.PageCount %>页  当前第<%= curpage %>页  <%= rs.pagesize %>条/页  <a href="show.asp?curpage=1">首页</a>   <a href="show.asp?curpage=<%=curpage-1%>">上一页</a>   <a href="show.asp?curpage=<%=curpage+1%>">下一页</a>   <a href="show.asp?curpage=<%= rs.PageCount%>">末页</a>
</a></div>
草原可可 2008-01-09
  • 打赏
  • 举报
回复
明白楼主 我是手动加标签来实现
leoz2z 2008-01-09
  • 打赏
  • 举报
回复
对,就是手动加分页符来实现
倾斜的水瓶座 2008-01-08
  • 打赏
  • 举报
回复
明白你的意思了,你是说文本内容太长了,比如1000字,你一页只想显示500字,而另外500字的显示通过分页实现。。给你个代码吧。。这个分页做到了一个.ASP页面里,需要分页的时候,将这个ASP文件包含进去,然后在输出内容的地方使用CheckPagination(内容)就可以了!

可是,我如何给你这个ASP文件呢。。。。。没有上传附近啊(是我没找到。。。。。)
yanlei83 2008-01-08
  • 打赏
  • 举报
回复
我也在为这个问题发愁~~~
daniel_jusa 2008-01-07
  • 打赏
  • 举报
回复
就是把内容按指定规分析出来,解成数组或其它可索引的集合。然后算出页数。输出分面代码。
你说的第二个效果指不过输出变了。道理还是一样的。
huangbq1 2008-01-07
  • 打赏
  • 举报
回复
就第二个的那个可是我做不出来呀,他分了好几页,我不知道这个分页是如何分的,~所以才来问的~他也是每个表格一页的~这样怎么做呢
超级玛莉 2008-01-07
  • 打赏
  • 举报
回复
这是你想实现的效果吧?第一次贴的链接是你做的网站吧?

其实我给你的建议应该比第二个链接实现的效果更好,用户可以选择自己想看的内容。
daniel_jusa 2008-01-07
  • 打赏
  • 举报
回复
楼主的问题是内容太长了,在前台页面拉的太长不好看。这个问题最常规的方法。是手动另入分面符。
然后在前台显示时对这个“字段信息”进行处理。我写了一个函数,你看看能不能用上。

用法:真接调用 Call InformationPagination("信息字段")
参数:要分页的信息
分页符是:[break_page],在要分页的地方加上这个。注意,如果分页的话在最后也要加一个,不分页就有用加了。

Sub InformationPagination(Information)
If InStr(Information,"[break_page]") > 0 Then
StrArray = Split(Information,"[break_page]")
Page = int(Request("Page"))
If isNull(Page) Or isEmpty(Page) Or Not isNumeric(Page) Then
Response.Write "<Script>histOry.go(-1);</Script>"
End If
If Page < 1 Then Page = 1
If Page > Ubound(StrArray) Then Page = Ubound(StrArray)
Response.Write StrArray(Page-1)
Else
Response.Write Information
End If
Response.Write("<div align=""center"" Style=""padding-top:10px;"">")
If inStr(Information,"[break_page]") > 0 Then
If Page="" Or isnull(Page) Or Page=1 Or Page<1 Then
Response.Write "<a style=""colOr:#cccccc;"">[首页]</a> <a style=""colOr:#cccccc;"">[上一页]</a> "
Else
Response.Write "<a href='?id="&request.QueryString("id")&"&Page=1'>[首页]</a> <a href='?id="&request.QueryString("id")&"&Page="&Page - 1&"'>[上一页]</a> "
End If
If Page=>ubound(StrArray) Then
Response.Write "<a style=""colOr:#cccccc;"">[下一页]</a> <a style=""colOr:#cccccc;"">[尾页]</a>"
Else
Response.Write "<a href='?id="&request.QueryString("id")&"&Page="&Page+1&"'>[下一页]</a> <a href='?id="&request.QueryString("id")&"&Page="&Ubound(StrArray)&"'>[尾页]</a>"
End If
End If
Response.Write("</div>")
End Sub
huangbq1 2008-01-07
  • 打赏
  • 举报
回复
标题、图片、表格都是由后台用户添加进去的~
huangbq1 2008-01-07
  • 打赏
  • 举报
回复
刚才发错了,应该是http://www.tr-valve.com/website/product/product2.asp?CID=&ArticlePage=1这个更近一点~
超级玛莉 2008-01-07
  • 打赏
  • 举报
回复
明白了,标题、图片、表格都是存放在数据库中的?

可以在右侧显示内容的页面上方添加一组链接,当作标签用。

页面内只显示第一个表格,然后通过用户点击链接,切换需要显示的产品。
什么都不能 2008-01-07
  • 打赏
  • 举报
回复
做静态
huangbq1 2008-01-07
  • 打赏
  • 举报
回复
http://www.cz-shengyuan.com/product4.htm
类似于这个网页,我想把每个产品分成一个页面,这样有办法吗?
超级玛莉 2008-01-07
  • 打赏
  • 举报
回复
页面向下延展是非常正常的事情,看着乱是因为格式的问题还是内容的问题呢?
能不能给我看看你所谓比较乱的页面,或者用静态页表示一下你想实现的效果。
什么都不能 2008-01-07
  • 打赏
  • 举报
回复
一般做法有2种,就是
table articleTitle
id
title
author
....

table articleContent
id
articleId
content

或者是分页符
huangbq1 2008-01-07
  • 打赏
  • 举报
回复
我就是在做网站时,发现后如插入说明内容时,要用到多个表格,可是多个表格都放在一页的话看起来乱,所以想让他一个表格成一页,这样子~
什么都不能 2008-01-07
  • 打赏
  • 举报
回复
手工插入分页符
glvicky 2008-01-07
  • 打赏
  • 举报
回复
后台添加分页符~前台解析时分页~
超级玛莉 2008-01-07
  • 打赏
  • 举报
回复
那还要查询字符数,还要判断访问浏览器的分辨率,貌似非常麻烦

请问LZ实现这个功能的初衷,看看可不可以从其他角度解决。
加载更多回复(9)

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧