Rails 3 Select_tag在javascript中给出缺失;错误

Rails 3 Select_tag in javascript give missing ; error

本文关键字:错误 javascript Select tag Rails      更新时间:2023-09-26

当我写

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也不工作

有谁以前遇到过这个错误可以指导我吗?

如何处理x ?这个可以移到局部吗?在任何情况下,你都不是在尝试html安全,而是在尝试javascript安全。

根据Dave的回答,我用JavaScript-safe解决了这个问题

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

然后在我的JS区域我写了

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

它工作很好。希望能有所帮助