使用javascript

时间:2016-03-11 01:07:34

标签: javascript ruby-on-rails

我的错误是:未捕获的TypeError:无法读取属性' forEach'未定义的

这是rails 4和javascript的混合。我在模式中有一个按钮,我需要将数据发送到表单中的集合。

用户将选择模式和形式的产品,我需要该产品可用颜色的集合。

产品有很多衬衫颜色。

模态

<td><%= link_to 'Add product', '#', class: 'btn btn-success btn-add-product', data: {product: product, sizes: product.sizes, shirt_colors: product.shirt_colors} %></td>

的javascript

$(".btn-add-product").click(function(){
  var product = $(this).data("product");
  var shirt_colors = $(this).data("shirt_colors");

  shirt_colors.forEach(function(shirt_color){
    $('select#color-select')
      .append('<option value="'+shirt_color.name+'">'+shirt_color.name.toUpperCase()+'</option>')
})

})

形式

= f.input :color_name, label: false, collection: [], input_html: {id: 'color-select'}

1 个答案:

答案 0 :(得分:1)

你需要抓住&#34;数据&#34;属性用连字符而不是下划线

$(this).data("shirt-colors");