我想通过file.js.erb将javascript代码附加到正文中。这是我写的:
$("body").append("<script type='text/javascript'> method_1({'<%= current_user.selections.pluck(:name).each do |t| raw t end %>'});</script>");
但我总是给我一个数组,并在javascript代码中附加了"quot"。我也尝试使用原始/html_safe。但它似乎没有效果
我已经尝试了其他SO链接,但它似乎没有帮助。我正在使用导轨 3。
您可以添加条件
{'<%= current_user.selections.pluck(:name).each do |t| raw (t.include?(""") ? t.gsub(""", "") : t) end %>'}
经过几次试验,我明白 html_safe 或 raw 是 String 类的方法,我正在数组上使用它,我也从迭代器中删除了 equal(=),所以这就是我现在的做法:
<% current_user.selections.pluck(:path).each do |t| %><%= raw(t) %>': true, '<% end %>'
现在,它以某种方式工作..虽然我面临一些其他问题,例如在数组末尾获取空字符串,但不知道为什么。但至少"
被删除了
试试这个轨道escape_javascripthttp://api.rubyonrails.org/classes/ActionView/Helpers/JavaScriptHelper.html