我有示例HTML代码:
<div class="category">
<div class="product">
<!-- some product info -->
<input type="text" value="0" /> <!-- it is quantity -->
</div>
<!-- ... other products -->
</div>
<!-- ... other categories -->
所以我需要使用jQuery来获取所有类别,其中至少有一个产品具有正数量。
看起来像这样(在C#中)
var filteredCategories = categories.Where(c => c.Products.Any(p => p.Quantity !=0));
如何使用jQuery做到这一点?
答案 0 :(得分:5)
您可以使用.filter()
jQuery方法
var filtered = $(".product").filter(function(){return this.find('input').val()>0});
或只是
var filtered = $('.product:has(input[value!=0])');
的jQuery文档
答案 1 :(得分:3)
$('.product', '.category').filter(function() {
return parseint($(this).children('input[type="text"]').val(),10) !== 0;
}).dosomething();
您应该考虑在数量输入中添加一个类来定位它,因为使用此方法也会选择.product
元素中的任何其他文本输入。
答案 2 :(得分:2)
答案 3 :(得分:1)
$('.product input[value!="0"]').closest('.product');
也许是这样的?
答案 4 :(得分:0)