javascript - Rails 上 .js.erb 文件中的 Ruby 数组到 js 数组

标签 javascript jquery ruby-on-rails arrays ruby-on-rails-4

我正在尝试将 js.erb 文件中的 ruby​​ 数组转换为 js 数组。我已经在堆栈溢出中检查了有关此问题的所有问题,但它对我不起作用。

这是函数

  function c(c) {
   js_array = <%= raw @keys.to_json %>;
   b.selection.remove(), b.html.insert('js_array[0]');
    }

它抛出错误Uncaught TypeError: Cannot read property '0' of null

我还在学习 js,所以我不确定这里出了什么问题

ruby @keys 数组中肯定有数据,因为我将其打印在同一页上。

如果我将数组更改为 js_array = ['gwfe', 'efw', 'efwe']; 它工作正常。这让我相信在尝试将 ruby​​ 数组转换为 js 数组时出现了问题。

最佳答案

我假设,您正在从数据库或本地获取@keys数据。你能尝试一下gon gem将值从 ruby​​ 传递到 js。这是 Railscast 教程:http://railscasts.com/episodes/324-passing-data-to-javascript?view=asciicast

看看这是否有效。

请告诉我。

关于javascript - Rails 上 .js.erb 文件中的 Ruby 数组到 js 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34845582/

相关文章:

mysql - 我用 Rails 创建了 2 个独立的应用程序,但它们使用的是同一个数据库! (MySQL)?

ruby-on-rails - 带有葡萄的 Rails 中仅 API 的应用程序?

javascript - 用于显示十六进制数字的控制台设置

javascript - TypeError non_object_property_load 是什么意思?

javascript - 根据条件为变量赋值的最简单方法

forms - Rails,在下拉列表中选择选项会过滤第二个下拉列表中的值

javascript - 我似乎无法让 Bootstrap Carousel 在本地工作,但它可以在 codepen 上工作

javascript - 如何将jQuery中的输入类型传递给ajax

javascript - 获取样式属性值添加 'X'并设置新值

mysql - 索引查询 "WHERE a IN (1,2,3) AND b = 4"