2

リスト内の値/属性からオブジェクト配列を作成したいのですが、次の方法ではうまくいきません:

$('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);  

        });

助けてくれてありがとう。

4

1 に答える 1

10

オブジェクトは中括弧内で定義する必要があります{}。キーは引用符で囲む必要があります。

作業コード:

$('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);  
});
于 2013-01-15T13:37:20.743 に答える