3

我有一个包含以下基本内容的 js.erb:

$("#currencies").html("<%= options_for_select([['Dollar', '$']])%>");

并且没有将 html 添加到元素#currencies。

但是,如果我这样做:

$("#currencies").html('<option value="$">Dollar</option>');

正在更新 html。

会发生什么?

出于调试目的,我尝试过这个:

alert("<%= options_for_select([['Dollar', '$']]) %>");

它也没有显示任何东西。

4

1 回答 1

5

您需要使用 <%=j .. %> 转义 javascript

<%=j options_for_select .. %>

或者

<%= escape_javascript(..) %>

或者

$('some_element').replaceWith('<%=j render 'some/element_template' %>');

来自api 文档

于 2012-06-29T07:21:16.967 回答