我有一块HTML传递,但是在那个块中,我需要进行Javascript调用以使用I18n库插入正确的字符串。
$('<div class="modal-dialog"> \
<div class="modal-content"> \
<div class="modal-body"> \
I18n.t("product.loading")<br> \
</div>
<div>
</div>')
.appendTo($(document.body))
我不知道怎么逃避我打电话。现在,文本&#34; I18n.t(&#34; product.loading&#34;)&#34;是什么出现了,而我期望Javascript调用以获取字符串的翻译版本,如&#34; Loading&#34; (如果是英文简介)。我怎样才能使Javascript被转义或以某种方式运行?
答案 0 :(得分:2)
您必须使用字符串添加,如:
'<div class="modal-body">' + I18n.t("product.loading") + '<br>' + ...
正如您所发现的那样,您无法将javascript直接插入字符串定义的中间并期望对其进行评估。它不会因为它只是字符串的一部分而赢了。所以,你把它全部变成一个javascript表达式,它是一个字符串加上函数调用的返回结果加上另一个字符串。