在传入下一个函数之前转义Javascript调用

时间:2015-01-27 00:30:46

标签: javascript

我有一块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被转义或以某种方式运行?

1 个答案:

答案 0 :(得分:2)

您必须使用字符串添加,如:

'<div class="modal-body">' + I18n.t("product.loading") + '<br>' + ...

正如您所发现的那样,您无法将javascript直接插入字符串定义的中间并期望对其进行评估。它不会因为它只是字符串的一部分而赢了。所以,你把它全部变成一个javascript表达式,它是一个字符串加上函数调用的返回结果加上另一个字符串。