Reputation: 10791
I want to create an object array from values/attributes in a list, but the following doesn't work:
$('ul.list').each(function() {
var localproducts = [];
$(this).find('li').each(function(){
var $itm = $(this);
localproducts.push( dataid : $itm.attr('data-id'), data-package: $itm.attr('data-package'), package-id: ($itm.children('.packageid').text()) );
});
catalogue.push(localproducts);
});
Thanks for the help.
Upvotes: 2
Views: 19037
Reputation: 35950
Object should be defined inside curly braces {}
. Keys should be in quotes.
Working code:
$('ul.list').each(function() {
var localproducts = [];
$(this).find('li').each(function(){
var $itm = $(this);
localproducts.push({
'dataid' : $itm.attr('data-id'),
'data-package' : $itm.attr('data-package'),
'package-id' : ($itm.children('.packageid').text())
});
});
catalogue.push(localproducts);
});
Upvotes: 11