Rails 3 javascript中的Select_tag丢失;错误

时间:2011-10-05 17:02:55

标签: javascript ruby-on-rails

写作时

var x = "<%= select_tag(:activity_group, options_for_select(activity_grp),{:include_blank => 'Create New Group', :style => 'width: 100px'}) %>";

<% activity_grp = @activity_group.map { |ag| [ag.name, ag.id] } %>


但是,我在Firebug中收到错误(缺少;在语句之前),因为

var x = "<select id="activity_group" name="activity_group" style="width: 100px"><option value="">Create New Group</option><option value="1">Movie</option>

 <option value="2">Report</option>";


生成的代码需要多行。我试过html_safe,但它不起作用

有人可以指导我之前遇到此错误吗?

2 个答案:

答案 0 :(得分:0)

你对x做了什么?这可以转移到部分?在任何情况下,您都不会尝试对其进行HTML安全保护,而是尝试JavaScript-safe它。

答案 1 :(得分:0)

根据戴夫的回答,我通过JavaScript安全

解决了这个问题
<% @x = select_tag(:activity_group, options_for_select(activity_grp),{:include_blank => 'Create New Group', :style => 'width: 100px'}) %>

然后在我的JS区写了

var abc = "<%= escape_javascript(@x)%>";

它工作正常。希望这个帮助