2014-02-13 30 views
1

對不起,這可能是一個非常簡單的問題,但我找不到答案,請幫助我。如何通過handlebar.js創建學位符號?

html人被給予handlebar模板用於顯示溫度單位值(° C,° F)就像在以下方式。

<script id="unlogged-navTpl" type="text/x-handlebars-template"> 
<h3>{{unitText}}</h3> 
</script> 

我使用以下方式創建模板。

var result=Handlebars.compile(document.getElementById("unlogged-navTpl"));  
result({unitText:&deg;C'}) 

它的正常工作,事情是我能看到能不值後編譯(° C)。它顯示&deg;C

我怎樣才能解決這個問題。

請任何人都可以幫助我。

回答

2

您可以包括文字字符或JavaScript字符串中使用escape sequence

result({ unitText: '\u00B0C' }); 

但是,與{{...}}佔位符預期,他們將把值作爲HTML實體的渲染將無法正常工作文本和重新編碼任何&爲一個特殊字符,結果:

<h3>&amp;deg;C</h3> 

{{{...}}}佔位符(在每一側3個括號)將跳過編碼,允許呈現ing「raw」HTML值。

+0

有趣。任何想法爲什麼他會看到「° C」,因爲他報告? – Sneagan

+0

@Sneagan由於'&'正在被再次編碼。所以,'& deg; C'而不是保留爲'° C'。 –

+0

D'oh!對。刪除了我的答案。 – Sneagan