0

我有一个 Ruby 变量:

@json = [{"lat":37.8690058,"lng":-122.2555342},{"lat":37.8739362,"lng":-122.2653001},{"lat":37.8701101,"lng":-122.2578559}]

当我尝试:

<script type="text/javascript" charset="utf-8">

   var test = <%= @json %>
   console.log(test);

</script>

萤火虫告诉我:

invalid property id
var test = [{&quot;lat&quot;:37.869005...707408,&quot;lng&quot;:-122.2545767}]

如何成功设置变量?

4

2 回答 2

3

似乎您的 JSON 引号被替换为 HTML 实体。尝试使用.html_safe

var test = <%= @json.html_safe %> 

如果这不能解决它,请查看其他帖子,因为我不是红宝石专家,

不要在 ruby​​ on rails 中转义 html

于 2012-12-02T20:58:46.987 回答
1

假设 @json 是一个 Ruby 对象:

<%= javascript_tag do %>
  var test = <%= @json.to_json.html_safe %>;
<% end %>
于 2012-12-02T21:26:31.580 回答