为什么JavaScript不能将erb识别为有效的2d数组?

时间:2013-07-20 08:00:37

标签: javascript arrays hash erb

我有这个:

<% citys = { "New York" => 200, "Boston" => 300, "Miami" => 400, "Chicago" => 500, "Los Angeles" => 600, "Houston" => 700 } %>

function drawMap() {
  var data = google.visualization.arrayToDataTable([
    ['City', 'Popularity'],
    <% citys.each do |key, value| %>
       [<% key %>, <% value %>], 
    <% end %>
  ]);

但它表示它不被认为是有效的2D阵列。这有什么不对?

1 个答案:

答案 0 :(得分:0)

查看您正在生成的JavaScript。不要查看模板并将其与浏览器的反应进行比较。

必须引用JavaScript字符串文字。您没有在输出的字符串周围输出引号。

此外,尾随逗号会导致某些JavaScript引擎出现问题。您在最后一个条目后输出逗号。