CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  ASP

新闻文本分页代码,谁有,给我抄抄,谢谢拉

楼主robina(糖糖)2004-09-01 09:56:29 在 Web 开发 / ASP 提问

我做动态的新闻,怎么做,才能让一个文章过长的自动生成“上一页”“下一页”啊,有代码吗,给我抄抄 问题点数:20、回复次数:3Top

1 楼vbcjpb(取之于网,用之于网!)回复于 2004-09-01 10:16:16 得分 20

对一篇长文章做到完美的分页输出    
     
   
  利用统计文章字数,然后达到一定字数就截断输出,但是分页的内容就会在莫名其妙的地方截断,不是很友好。  
  很简单,在要截断的地方附近找下面的符号:  
  ;’”?。!;'".!  
  如果后面存在    
   
  或  
  就分页。主要是要研究文章的格式。  
  <%  
  if   Request.ServerVariables("Content_Length")   >   0   then  
  content   =   Request.Form("textarea1")  
   
  PageLength   =   1000   '每页字数  
  CLength   =   Len(content)  
  PageCount   =   Int(Clength/PageLength)   +   1   '计算页数  
   
  dim   PageArray  
  redim   PageArray(PageCount)  
   
  Seperator   =   Array(chr(13),chr(10),"。","!","?",";",",","”","’")   '分隔符  
   
  PageArray(0)   =   0  
  Pos   =   0  
  for   j=0   to   ubound(Seperator)  
  Pos   =   instr(PageArray(i)+900,content,Seperator(j))   'PageArray(i)+900   附近位置是100字,1-999可调  
  while   Pos   >   0   and   Pos   <   (i+1)*PageLength   and   Pos   >   i*PageLength  
  PageArray(i)   =   Pos  
  Pos   =   instr(Pos+PageLength,content,Seperator(j))  
  wend  
   
  if   PageArray(i)   >   0   then    
  Response.Write   "0:i&brvbar;   "&PageArray(i)&"  
  "&j&":j"&Seperator(j)&"  
  "  
  j   =   j   +   ubound(Seperator)   +   1    
  end   if  
  next  
   
  for   i=1   to   PageCount-1  
  PageArray(i)   =   0  
  Pos   =   0  
  for   j=0   to   ubound(Seperator)  
  Pos   =   instr(PageArray(i-1)+950,content,Seperator(j))    
  while   Pos   >   0   and   Pos   <   (i+1)*PageLength   and   Pos   >   i*PageLength  
  PageArray(i)   =   Pos  
  Pos   =   instr(Pos+PageLength,content,Seperator(j))  
  wend  
   
  if   PageArray(i)   >   0   then    
  Response.Write   i&":i&brvbar;   "&PageArray(i)&"  
  "&j&":j"&Seperator(j)&"  
  "  
  j   =   j   +   ubound(Seperator)   +   1    
  end   if  
  next  
  next  
   
  output   =   mid(content,1,PageArray(0))  
  output   =   replace(output,chr(13),"  
  ")  
  Response.Write   "  
   
  第1段  
  "  
  Response.Write   output  
   
  for   i=1   to   PageCount-2  
  output   =   mid(content,PageArray(i-1)+1,PageArray(i)-PageArray(i-1))  
  output   =   replace(output,chr(13),"  
  ")  
  Response.Write   "  
   
  第"&i+1&"段  
  "  
  Response.Write   output  
  next  
   
  '最后一段的输出就没写了  
  else  
  %>  
  [FORM   action=""   method=POST   id=form1   name=form1]  
  [TEXTAREA   rows=70   cols=120   id=textarea1   name=textarea1]  
  [/TEXTAREA]  
  [INPUT   type="submit"   value="Submit"   id=submit1   name=submit1]  
  [/FORM]  
  <%end   if%>    
   
     
  Top

2 楼zhushizu(从来就没有救世祖)回复于 2004-09-01 12:16:40 得分 0

是呀,我也是想了好久。。关注中。。。Top

3 楼zhushizu(从来就没有救世祖)回复于 2004-09-01 12:30:55 得分 0

是呀,我也是想了好久。。关注中。。。Top

相关问题

  • 分页代码
  • 求分页代码
  • 大家是怎样分页的?(文本)
  • 高分求一份分页代码
  • 有问题的分页代码!
  • 谁给我个分页代码呀
  • 100分求一个分页代码
  • 求Asp.NetPage控件分页的源代码
  • 求按周分页的代码!
  • 高分求分页源代码!(200分)

关键词

  • 字数
  • pagearray
  • seperator
  • 分页
  • pagelength
  • pos
  • 截断
  • ubound
  • textarea
  • pagecount

得分解答快速导航

  • 帖主:robina
  • vbcjpb

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo