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