在使用織夢dedecms做站點開發(fā)的時候,經(jīng)常會遇到這樣一種情況,在一些標(biāo)簽里還需要嵌套其他標(biāo)簽,但是織夢系統(tǒng)一般不支持這樣的調(diào)用,我們該如何實現(xiàn)這樣的要求呢,舉例說明代碼如下:
{dede:listpagesize='6'}
<li><ahref="/plus/jobs.php?lang={dede:global.user_lang/}&jobid=[field:id/]">[field:jobname/]</a></li>
{/dede:list}
當(dāng)運行的時候,發(fā)現(xiàn){dede:global.user_lang/}居然原封不動的被展示了出來而未被解析,361源碼的小編很納悶,于是去網(wǎng)上搜了有關(guān)DEDECMS不能嵌套標(biāo)簽的解決辦法。百度還真是偉大,但是比較亂,最好小編只能自己總結(jié)出一下2個方法,供大家做參考。
方案一:
<!–在標(biāo)簽之前,先用JS獲取標(biāo)簽中需要得到的內(nèi)容–>
<script type="text/javascript">
functionget_user_lang(){document.write("{dede:global.user_lang/}");}
</script>
是不是感覺怪怪的,哈哈,怪是怪了點,但是還是有用的。
{dede:listpagesize=’6′}
<!–然后在標(biāo)簽中調(diào)用該JS函數(shù)把內(nèi)容給顯示出來–>
<li><ahref="/plus/jobs.php?lang=<scripttype="text/javascript">get_user_lang();</script>&jobid=[field:id/]">[field:jobname/]</a></li>
{/dede:list}
顯然,這種辦法肯定不是我要的,因為該方法不僅復(fù)雜,而且不容易維護(hù),更重要的是與我盡量的堅持行為和結(jié)構(gòu)分離的習(xí)慣相悖,于是又在網(wǎng)上搜了搜,結(jié)果發(fā)現(xiàn)了更加方便的解決辦法,即把{dede:global.user_lang/}更改成[field:global.user_lang/]。
方案二:
代碼如下:
{dede:listpagesize=’6′}
<li><ahref="/plus/jobs.php?lang=[field:global.user_lang/]&jobid=[field:id/]">[field:jobname/]</a></li>
{/dede:list}
是不是很簡單呢,該方法不僅簡單,而且容易維護(hù),也符合結(jié)構(gòu)和行為分離的良好習(xí)慣,當(dāng)然,適用其他標(biāo)簽或者在DEDECMS中也是適用的。
這樣的方法,很多時候是比較適應(yīng)的,小伙伴最好能學(xué)會舉一反三,那樣以后開發(fā)和運用的時候就比較方便了。
以上就是織夢dedecms標(biāo)簽不能被嵌套怎么辦的全部內(nèi)容,希望對大家的學(xué)習(xí)和解決疑問有所幫助,也希望大家多多支持武林網(wǎng)。新聞熱點
疑難解答
圖片精選