帮忙修改一下asp程序的代码

ASP程序,如何限定显示的字符数?限制80个字符<%setrs0=server.createobject("adodb.recordset")ifrequest("id"... ASP程序,如何限定显示的字符数?限制80个字符 <%
set rs0=server.createobject("adodb.recordset")
if request("id")<>"" then
sql0="select * from news where id="&cstr(request("id"))
else
sql0="select * from news where cataid =35 "
end if

rs0.open sql0,conn,1,1
if rs0.eof and rs0.bof then
response.write "<script>alert('对不起,该信息并不存在!');</Script>"
response.end
else
content=rs0("content")
end if

%>
<tr>
<td><font color="#000000" style="line-height:15pt"><%=content%></font></td>
</tr>
<%
set rs=Nothing

%>
展开
 我来答
巫马英武75415
2013-08-18 · TA获得超过7404个赞
知道大有可为答主
回答量:1666
采纳率:50%
帮助的人:946万
展开全部
<%=content%>

这个改成:
<%=Left(content,80)%>

另外提醒一点,英文字符一个字母算一个字符,包括英文符号;
中文文字一个算两个字符,包括中文符号。
所以这里限制80个字符的话,其实是限制了40个中文字,或80个英文字符,这样就造成了内容显示长短不一的问题,所以应该调用下面的函数让你始终显示80个字符。
===========牛B的分割线============
<%
Function gotTopic(ByVal str, ByVal strlen)
If str = "" Then
gotTopic = ""
Exit Function
End If
Dim l, t, c, i, strTemp
str = Replace(Replace(Replace(Replace(str, " ", " "), """, Chr(34)), ">", ">"), "<", "<")
l = Len(str)
t = 0
strTemp = str
strlen = CLng(strlen)
For i = 1 To l
c = Abs(Asc(Mid(str, i, 1)))
If c > 255 Then
t = t + 2
Else
t = t + 1
End If
If t >= strlen Then
strTemp = Left(str, i)
Exit For
End If
Next
If strTemp <> str Then
strTemp = strTemp & "…"
End If
gotTopic = Replace(Replace(Replace(Replace(strTemp, " ", " "), Chr(34), """), ">", ">"), "<", "<")
End Function
%>
然后显示的时候用:
<%=gotTopic(content,80)%>

这个函数还会自动计算,如果内容大于80个,显示80个以后会自动给你加一个”...“
嘿嘿。。。。。。。。
追问
加入代码之后,我调的800,显示的是100个文字,而且800,和880是一样多的
追答
单单改成这个管用吗?
PAOMOBINGDIAN
2013-08-19 · TA获得超过773个赞
知道小有建树答主
回答量:1289
采纳率:0%
帮助的人:524万
展开全部
简单的可以用<%=left(content,20)%>
想严格点。过滤符号之类特殊字符的话得写函数
<%
Function LeftTrue(str,n)
If len(str)<=n/2 Then
LeftTrue=str
Else
Dim TStr
Dim l,t,c
Dim i
l=len(str)
t=l
TStr=""
t=0
for i=1 to l
c=asc(mid(str,i,1))
If c<0 then c=c+65536
If c>255 then
t=t+2
Else
t=t+1
End If
If t>n Then exit for
TStr=TStr&(mid(str,i,1))
next
LeftTrue = TStr
End If
End Function
%>
用法跟上面一样
<%=LeftTrue(content,20)%>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
田响建站
2013-08-17 · 田响建站,纯手工建网站
田响建站
采纳数:3384 获赞数:2327

向TA提问 私信TA
展开全部
<%=left(content,80)%>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式