按数据过滤一组项目

时间:2012-05-03 18:47:49

标签: jquery

假设我有一组带有一些数据的项目,如下所示:

<li data-filtro="website, web app"><a href="trabajos.php?id=84"><img src="imgs/thumbs/item_tn_84.jpg" /></a></li>
<li data-filtro="website, banners"><a href="trabajos.php?id=131"><img src="imgs/thumbs/item_tn_131.jpg" /></a></li>
<li data-filtro="publicidad"><a href="trabajos.php?id=22"><img src="imgs/thumbs/item_tn_22.jpg" /></a></li>
<li data-filtro="publicidad"><a href="trabajos.php?id=45"><img src="imgs/thumbs/item_tn_54.jpg" /></a></li>

要过滤一些与其名称为“valor”的变量值相匹配的数据内容,我想做类似的事情

var $set = $('li').filter(function(index){
    return $(this).data('filtro').indexOf(valor) > -1;
});

但不知怎的,我无法让它发挥作用......你们有两分钟睁开眼睛吗? 提前谢谢!

2 个答案:

答案 0 :(得分:1)

我知道这是一个不同的解决方案,也许这不是你想要的,但你可以使用选择器:

$('li[data-filtro*="' + valor + '"]') //this should return all the elements you want.

答案 1 :(得分:1)

试试这个

$('li').each(function(){

        return $(this).data('filtro').indexOf(valor) > -1;
});