【发布时间】:2017-07-13 04:33:57
【问题描述】:
我想将 $.each(函数内部)循环中的产品对象传递给闭包外部的函数。
当我控制台记录产品(对象)时,它给了我:
“未捕获的引用错误:未定义产品”
这是我的代码,请告诉我我缺少什么:
function openMenu(url){
// get feed from API
$.getJSON(url, function(storedata) {
$('#live-menu').addClass('active');
$('.live-menu-content').addClass('active');
// each the feed data
$.each(storedata, function(categoryName, productObject){
// category title and open table
$('.live-menu-content').append('<h1 class="menu-category-title">'+categoryName+'</h1>');
$('.live-menu-content').append('<table class="table table-'+categoryName+'"><tbody>');
//go through products
$.each( productObject, function( productId, product ) { j++;
$('.table-'+categoryName+'').append('<tr><td>'+product.name+'<br/><small>'+product.description+'</small></td><td>€'+product.price+'</td><td><a onclick="addToCart(product);" class="btn btn-primary pull-right" href="#">Add</a></td></tr>');
});
// close table
$('.live-menu-content').append('</tbody></table>');
});
})
// on fail
.fail(function() {
alert( "Error!" );
});
return false;
}
function addToCart(product){
console.log(product);
return false;
};
【问题讨论】:
标签: javascript jquery loops multidimensional-array each