2014-02-13 2 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

Вы можете включать буквальный характер или использовать escape sequence в строке JavaScript:

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

Смежные вопросы