如何将长的标题用省略号收尾

时间:2021-05-18

从数据库中提取长长的文章,总是有碍网页的排版布局。

所以,想固定地提取一部分字符,然后后面有……替代。

1,原理:
判断文章的长度是否超过规定的长度,若超过则只显示规定长度的大学,否则完整显示。

2,涉及函数:

len():返回字符串长度或者变量的字节长度。
[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]
left():截取一个字符串的前部分
[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]
3,主要程序:判断内容长度是否大于给定值,据结果做相应操作
[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]

4,ASP中应用
以上是在客户端脚本调试,和ASP也是大同小异:最主要的是函数功能。


<%
text=rs("content")'将数据库字段值赋到某变量上
i=10'定义固定大小
iflen(text)>ithen'如果文本长度大于给定的值
text=left(text,i)'则提取前段的i位的字符串
response.write(text&"...")
else
response.write(text)
endif
%>


5,为了方便,做成函数


<%
functionconleft(content,i)
iflen(content)>ithen
content=left(content,i)
response.write(content&"...")
else
response.write(content)
endif
endfunction
%>


以上为函数,下面就可以直接调用。


<%callconleft(rs("content"),10)%>


OK,相信以后遇到这些问题应该是NOPROBLEM

为了解决中英文截取的问题,建议大家使用如下函数:


FunctiongotTopic(str,strlen)
ifstr=""then
gotTopic=""
exitfunction
endif
diml,t,c,i
str=replace(replace(replace(replace(str,"&nbsp;",""),"&quot;",chr(34)),"&gt;",">"),"&lt;","<")
l=len(str)
t=0
fori=1tol
c=Abs(Asc(Mid(str,i,1)))
ifc>255then
t=t+2
else
t=t+1
endif
ift>=strlenthen
gotTopic=left(str,i)&"…"
exitfor
else
gotTopic=str
endif
next
gotTopic=replace(replace(replace(replace(gotTopic,"","&nbsp;"),chr(34),"&quot;"),">","&gt;"),"<","&lt;")
EndFunction

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章