javascript - json、rails、javascript 中的解析错误

标签 javascript ruby-on-rails json

我需要将 ruby​​ 数组放入 JavaScript 数组中,但遇到解析错误。

var characters = <%= @poop.to_json %>;

这就是我将 ruby​​ 嵌入到内联 javascript 中的方式,但它出现了解析错误。我应该如何将此 ruby​​ 数组放入 JavaScript 中?

我将其嵌入到 .html.erb 文件中,因此 ruby​​ 应该在 javascript 之前获取该变量。

这是 Safari 控制台显示的内容:

alt text

更新

我有一个表单,其中分别包含三个字段 js、css 和 html,因此我会将 javascript 放入表单中,然后将其放入 header 中。

<head>
  <%= @game.javascript %>
 </head>

正如你所看到的,我将 ruby​​ 嵌入到了 javascript 中,这是 ruby​​ 对象的输出,所以 ruby​​ 没有首先到达它的原因是它已经到达它并处理了 <%= %> 只是就像另一个字符串一样。

啊,我投票支持你们所有人的帮助。谢谢!

最佳答案

您将 .js 文件视为 .erb 文件 - 事实并非如此。 JavaScript 文件不会被 Ruby 解析 - public 中的任何内容按原样发送。

获取 @poop 的一种方法进入 JavaScript 的方法是使用 Rails 操作来呈现 json,然后使用 XHR 加载它。

或者,您可以输出 @poop<script> 中的 HTML 模板中标签,然后从 JavaScript 加载该脚本标签的内容。

关于javascript - json、rails、javascript 中的解析错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4485856/

相关文章:

ruby-on-rails - Rails和Devise杀死了其他地方的验证错误

ruby-on-rails - Rails 通过连接按字符串列值排序

javascript - 每次我按下按钮时,Jquery 都会阻止追加成倍增加

javascript - Angular ng-click 事件

javascript - 将字符串转换为特定时间格式(字符串)JavaScript

ruby-on-rails - Rails 3 获取嵌套记录

javascript - Postman 测试检查部分对象值

c# - 使用 JSON.NET 自定义异常覆盖消息

javascript - 如何将表单中文本输入字段的宽度设置为页面宽度的百分比?

javascript - iOS 上的全屏 <canvas> 元素 : glitch on scroll