2014-04-07 25 views
5

有沒有辦法,我可以(不修改鬍鬚的來源)禁用HTML轉義?我爲其他東西使用鬍子,並不想讓以下實體逃脫。小鬍子:全局禁用html轉義?

var entityMap = { 
    "&": "&", 
    "<": "&lt;", 
    ">": "&gt;", 
    '"': '&quot;', 
    "'": '&#39;', 
    "/": '&#x2F;' 
}; 

給定一個模板像foo '{{bar}}'和視圖{ bar : 1 }會產生foo &#39;1&#39

+0

如何在頁面完全加載後運行「descaping」方法? – Knerd

回答

18

其實很簡單,mustache提供的escape函數被覆蓋。以下行禁用鬍鬚模板的轉義。

mustache.escape = function (value) 
{ 
    return value; 
}; 
20

如果你想只是沒有HTML逃避一些字符串,你只是做{{{XX}}}代替{{XX}}

按:

http://mustache.github.io/mustache.5.html

所以,如果你有這樣的組成的字符串:

測試=> Q &一個

與呼喚:

{{test}} 

會給你:

Q &amp; A 

..但與調用:

{{{test}}} 

會給你剛:

q & a 
+2

感謝您的回覆,但這不是關於佔位符。我的問題是它也逃避了整個模板。 – codevour

+0

你是如何煽動模板的?這適用於我使用本地模板(在同一頁中的**