2015-12-01 66 views
1

我的收藏包含轉義HTML實體,如& lt,& gt等,當我檢索並顯示它時,它轉義並打印各個字符但不解釋HTML。解析來自Meteor Collection的轉義HTML

例如:

Template.Help.helpers({ faq_content: function() { var x = Help.findOne({}); return x.faq; } })

假設x採用以下值:

x = { faq: <div class=\"help_articles\">\\n ....some_content....\\n </div> tips: <div class=\"help_articles\">\\n ....some_content....\\n </div> articles: <div class=\"help_articles\">\\n ....some_content....\\n </div> }

即使當我把使用三個大括號即這個輔助,

{{{faq_content}}}

在瀏覽器上顯示的內容是

<div class="help_articles">....some_content....</div>

這將顯示爲文本,但我希望它被解釋爲HTML。 請提出了一些解決方案

回答

0

看起來你需要一次內部呈現前_.unescape()的字符串{{{}}}括號:

Template.Help.helpers({ 
faq_content: function() { 
    var x = Help.findOne({}); 
    return _.unescape(x.faq); 
} 
}) 

要小心的是,FAQ內容是完全控制並且未經您的用戶提交而未經清理內容。

+0

這確實奏效。謝謝。 –

+0

太棒了!然後繼續並接受答案,以便它不會解決@SyedIsSaqlain – DSK