如何将Rails 3控制器中的ID数组传递给Javascript数组?

时间:2011-11-29 06:36:14

标签: javascript arrays ruby-on-rails-3

我试图使用rails抓取图像的ID,将这些ID传递给javascript,然后使用javascript图像查看器翻转它们。

这就是我在导轨控制器中的含义

@rails_array = Images.all


这是在我的视图文件中

<script type="text/javascript" >
 var myIds=new Array(<% @rails_array %>);
</script>

3 个答案:

答案 0 :(得分:3)

您可以从控制器收集ID,如下所示:

@rails_array = Images.all.map &:id

在视图中:

<script type="text/javascript" >
   var myIds= <%= @rails_array %>
</script>

答案 1 :(得分:2)

将任何对象传递给javascript的好方法是通过JSON:

var myId= <%= @rails_array.to_json %> ;

注意:您需要为字符串&amp;添加.html_safe哈希(或包含它们的数组),但整数数组不需要它。

答案 2 :(得分:1)

您是否尝试过split() javascript方法

 <script type="text/javascript">
  var myId=<% @rails_array %>.split(/,/);
 </script>