發表于:2011-05-16 00:00:00來源:人氣:2843
标題太長(cháng)時,往往會把界面撐開,影響美觀,所以我們需要省略過長(cháng)的(de)文字內(nèi)容。
以下調用方法
<%= 函數名(Rs("字段"),标題長(cháng)度) %>
便如(rú):
<%= InterceptString(Rs("title"),30) %>
方法一(yī):
Function InterceptString(txt,length)
txt=trim(txt)
x = len(txt)
y = 0
if x >= 1 then
for ii = 1 to x
if asc(mid(txt,ii,1)) < 0 or asc(mid(txt,ii,1)) >255 then
y = y + 2
else
y = y + 1
end if
if y >= length then
txt = left(trim(txt),ii)
exit for
end if
next
InterceptString = txt
else
InterceptString = ""
end if
End Function
這種方法隻是截取長(cháng)度。不會有省略号。下面介紹一(yī)種有省略号的(de)
方法二:
function cLeft(str,n)
dim str1,str2,alln,Islefted
str2 = ""
alln = 0
str1 = str
Islefted = false
if isnull(str) then
cleft = ""
exit function
end if
for i = 1 to len(str1)
nowstr = mid(str1,i,1)
if asc(nowstr)<0 then
alln = alln + 2
else
alln = alln + 1
end if
if (alln<=n) then
str2 = str2 & nowstr
else
Islefted = true
exit for
end if
next
if Islefted then
str2 = str2 & "..."
end if
cleft = str2
end function
=====================================================
另外在網上搜集到其它兩種貼出來
方法一(yī)、在ASP中使用mid()函數
<%=mid(rs("title"),1,10)%>
該代碼表示,顯示從第一(yī)個字符開始,長(cháng)度為(wèi)10的(de)标題內(nèi)容
(這種方法非常簡單,但多餘內(nèi)容不用省略号代替)
方法二、ASP判斷語句
比較完美的(de)方法
程序代碼
<%if len(rs.Fields.Item("title").Value)>10then
response.Write left(rs.Fields.Item("title").Value,10)&"......"
else
response.Write rs.Fields.Item("title").Value
end if %>