2015-04-03 58 views
2

我試圖將描述,這是從我的數據庫中的字符串轉換爲HTML。我用{{ projet.description }}得到了描述,但似乎在JavaScript中,「描述」會在我的腳本中導致一個錯誤...因此,我創建了一個帶有我的描述的div,使其不可見,並通過innerHTML獲得。從樹枝模板數據庫的Unescape HTML字符串

嫩枝代碼

<div id="desc">{{ projet.description }}</div> 
    <div> 
     <script type="text/javascript"> 
      var desc = document.getElementById("desc").innerHTML|e('js')|raw; 
      document.write(desc); 
     </script> 
    </div> 

CSS

#descr { 
    display:none; 
} 

但現在,document.write()仍返回像 「<p><em>POKEMON</em></p>」 的字符串。不過,我想用HTML。

+0

http://stackoverflow.com/a/814649/1524085也許這將有助於 – 2015-04-03 20:23:42

回答

2

我幾乎可以肯定的是HTML中逃脫,所以嘗試一下:

<div id="desc">{{ projet.description|raw }}</div> 

參見樹枝文檔原料過濾器:raw

原始過濾器標記值作爲「安全」,這意味着在啓用了自動轉義的 環境中,如果raw是應用到的最後一個過濾器,則此變量將不會被 轉義

另外:

var desc = document.getElementById("desc").innerHTML|e('js')|raw; 

上面代碼段上沒有枝杈有效的,因爲它不被有效的分隔符,如「{{ }}」或「{% %}」包圍。

+0

Omg感謝您的幫助!有用 !我知道,當我查看src代碼時,這是因爲HTML,它不是HTML。 – david 2015-04-03 21:02:07