私は次のコードを持っています。私がしたいのは、packageid と categoryid に応じて配列 dataids に dataid を格納することです。これら 2 つの値は packageBtnFilter と categoryBtnFilter で定義されています。両方とも 0 の場合、リスト内のすべてのデータ ID を返す必要があります。現時点では、packageid が 3 に等しいすべてのアイテムのデータ ID のみが格納されていることがわかりますが、packageBtnFilter および categoryBtnFilter に依存するべきではありません。
var store_products = function () {
var catalogue = new Array();
var packageBtnFilter = $('#packages').val();
var categoryBtnFilter = $('#categories').val();
$('ul.list').each(function () {
var localproducts = new Array();
$(this).find('li').each(function () {
var $itm = $(this);
localproducts.push({
'dataid': $itm.attr('data-id'),
'datapackage': $itm.attr('data-package'),
'packageid': ($itm.children('.packageid').text()),
'categoryid': ($itm.children('.packageid').text())
});
catalogue.push(localproducts[localproducts.length - 1]);
});
var dataids = new Array();
$(catalogue).each(function () {
if (this.packageid == 3) dataids.push(this.dataid);
});
console.log(dataids);
});
}
store_products();
ありがとう!