我有一个使用
找到的jQuery项目列表var groupedItems = $('div[data-group-id="'+groupId+'"]');
每个分组的项目都有一个名为
的属性data-info={"isAvailable":"true","isValid":"false"}
来自groupsItem的我想要filterOut只有属性isAvailable = true。
如何基于数据属性进行过滤?
答案 0 :(得分:1)
您可以使用jQuery filter()
方法过滤jQuery集合,以及使用data()
方法获取属性的位置。
var groupedItems = $('div[data-group-id="' + groupId + '"]');
var res = groupedItems.filter(function() {
// since property value starts with {, the data method
// would parse if it's a valid JSON. So simply get the
// property from the object and compare
return $(this).data('info').isAvailable == 'true';
})
答案 1 :(得分:1)
您可以使用filter
过滤在groupedItems
数据属性中isAvailable
设置为true
的{{1}}。使用info
访问数据属性。
data()

var groupId = 1;
var groupedItems = $('div[data-group-id="'+groupId+'"]');
var info = groupedItems.filter(function(){
return $(this).data('info').isAvailable == 'true';
});
console.log(info);