我的错误是:未捕获的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'}
答案 0 :(得分:1)
你需要抓住&#34;数据&#34;属性用连字符而不是下划线
$(this).data("shirt-colors");