如何在JavaScript中嵌入Ruby(Rails + .html.erb文件)
我有一个.html.erb文件,里面有一些javascript。 我想做这样的事情:
var stuff = ''
做这个的最好方式是什么? 我可能完全离开…谢谢。
要安全地执行此操作,您需要使用to_json:
<%= javascript_tag do %> var stuff = <%= @ruby_var.title.to_json %>; <% end %>
如果@ ruby_var.title中有引号,这将确保您的代码不会中断。
要包括我会做的div:
<%= javascript_tag do %> var stuff = <%= "#{@ruby_var.title}".to_json %>; <% end %>
请注意,<%=%>周围没有引号,to_json会为您处理。
在你的.html.erb文件中工作正常。
您可以使用javascript_tag函数将Javascript包含在.html.erb文件中。
例:
javascript_tag "alert('This is a test')"
在你的foo.html.erb中将返回
到浏览器。
Ruby不能在客户端上运行,至少不能使用专门的浏览器插件。 相反,请查看使用AJAX和RJS从Javascript查询您的Ruby Web应用程序并将其返回的任何文本插入到您的页面中。
没有更多信息,我认为你不会得到任何更好的答案。 我也可能完全离开,因为我只是猜测你真正想要做什么。