注册 登录
编程论坛 ASP技术论坛

【请教】关于ASP截取文章末尾遇到HTML的显示问题

enjoy535 发布于 2010-04-30 15:36, 701 次点击
RT,我自己挣在做一个BLOG,想在首页时显示一些文章的预览界面,想用一种最简单的方法,我就直接用了left函数,如下:
<% if len(rs_bg("blog_content"))>250 then
    response.Write(left(ubb2html(rs_bg("blog_content")),248)&"...")
else
    response.Write(ubb2html(rs_bg("blog_content")))
end if
%>
直接显示文章的前250个字符(ubb2html是一个HTML转换函数)

这时就遇到一个问题,如果在截取的文章中最后几位字符串中包含有HTML代码(如:<br>、<p>、<img...>等)时,就会造成显示网页显示错误,有时是图片无法显示(因为在截取到图片地址中间时遇到250,后面一段就被忽略了),有时则直接造成整个网页错误。

在我印象中好像有一种方法是在截取字符串时,加入一个判断函数,如果在遇到开口“<?”(如:<img)的时候,会有一个计数器,在继续计算字符串时会判断后面是否闭口“</?>”(如:</img>,如果闭口之后还没有到截取长度时,则继续截取,如果在这个字符串中间达到截取长度,则继续往后截取,直到闭口。

以上是我了解的一个大概原理,好像多用于智能分页的时候,但具体的编码忘了,不知哪位达人能够指导指导,也顺便给和我一样的菜鸟一个学习的机会呀
1 回复
#2
yms1232010-04-30 15:44
可以用Server.HtmlEncode将HTML内容编码就不会在显示时被浏览器解析了。
1