jQuery .find()2个匹配的参数

时间:2011-06-04 23:18:25

标签: javascript jquery jquery-selectors

我有一个无序列表,每个元素有多个属性,我想找到具有这两个属性的所有元素。

var results = $('#mylist').find(function() {
    return
        $(this).attr('data-label') == 'red' &&
        $(this).attr('data-size') == 1;
});

我在下面的链接中添加了一个示例:

http://jsfiddle.net/nbz4H/1/

2 个答案:

答案 0 :(得分:9)

只需使用一个选择器:

$('li[data-label="red"][data-size="1"]').css('color','red');

实施例: http://jsfiddle.net/niklasvh/RyR87/

答案 1 :(得分:2)

jQuery的find没有将函数作为参数。这就是为什么这不起作用。

您需要构建一个合适的CSS selector。类似的东西:

 results = $('#mylist [data-label="red"][data-size="1"]');