用自定標(biāo)簽可以獲取數(shù)據(jù)庫(kù)中相應(yīng)表的字段,可是有些字段比如說(shuō)下載地址是以字符串的方式存放的,然后在字符串中用分割符區(qū)分不同地址,比如說(shuō):"下載地址1|200710/20071022165122306.doc$$$下載地址2|http://www.163.com"
如何在自定義標(biāo)簽中把這兩個(gè)地址分隔出來(lái)?可以用js中的split函數(shù)
添加自定義函數(shù)標(biāo)簽如下:
函數(shù)名:比如{MY_fenge}
參數(shù):一個(gè),在下載內(nèi)容頁(yè)模板調(diào)用的時(shí)候?yàn)閧MY_fenge({$SoftID})}
查詢語(yǔ)句:select DownloadUrl from PE_Soft where SoftID={input(0)}
標(biāo)簽內(nèi)容:
{Loop} {Infobegin}
<script language="JavaScript">
var str="{$Field(0,Text,0,0,0)} " //{$Field(0,Text,0,0,0)}為數(shù)據(jù)庫(kù)中的下載地址,
// 以"下載地址1|200710/20071022165122306.doc$$$下載地址2|http://www.163.com"為例
var str1=str.split("$$$") //對(duì)下載地址進(jìn)行第一次分割,按照$$$拆開(kāi),然后存放在數(shù)組str1中
//str1[0]=下載地址1|200710/20071022165122306.doc
//str1[1]=下載地址2|http://www.163.com.
var str2; //定義一個(gè)新的數(shù)組,因?yàn)檫€需要第二次分割才能得出正確的地址.
for(i=0;i<str1.length;i ){ //這個(gè)循環(huán)是算出有多少個(gè)下載地址的,str1.length是數(shù)組的長(zhǎng)度.
str2 = str1[i].split("|") //第二次分割,也就是把str1[0]=下載地址1|200710/20071022165122306.doc
//再進(jìn)行一次分隔,我們要取的是200710/20071022165122306.doc這個(gè)值
var count=i 1 //i是0開(kāi)始的.所以這里加一,用來(lái)對(duì)下載地址進(jìn)行編號(hào).
//第二次分隔后,str2[0]=下載地址1,str2[1]=200710/20071022165122306.doc,str2[1]即我們要取的內(nèi)容
document.write ("下載地址" count ":<a href='" str2[1] "'>" str2[1] "</a><br>");
}
</script> {Infoend} {/Loop}
前臺(tái)顯示的效果是
下載地址1:200710/20071022165122306.doc
下載地址2:http://www.163.com
新聞熱點(diǎn)
疑難解答
圖片精選