海口秀英隆智慧網絡科技工作室
咨詢熱線:400-822-8458 客戶服務:0898-32183600

ASP中新聞标題太長(cháng)時,省略号顯示過長(cháng)內(nèi)容

發表于: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 %>

文章(zhāng)整理(lǐ): 世紀雲圖  /

以上信息與文章(zhāng)正文是不可(kě)分割的(de)一(yī)部分,如(rú)果您要轉載本文章(zhāng),請保留以上信息,謝謝!

版權申明:本站文章(zhāng)部份來自(zì)網絡,如(rú)有侵權,請聯系我們,我們收到後立即删除,謝謝!

特别注意:本站部份轉載文章(zhāng)言論不代表本站觀點,本站所提供的(de)攝影照片,插畫,設計作品,如(rú)需使用,請與原作者聯系,版權歸原作者所有。

微信
網站建設
軟件業務
網絡營銷
400電話