filter(expr|obj|ele|fn)
筛选出与指定表达式匹配的元素集合。
这个方法用于缩小匹配的范围。用逗号分隔多个表达式
保留带有select类的元素
HTML 代码:
<p>Hello</p><p>Hello Again</p><p class="selected">And Again</p>
jQuery 代码:
$("p").filter(".selected")
结果:
[ <p class="selected">And Again</p> ]
保留子元素中不含有ol的元素。
HTML 代码:
<p><ol><li>Hello</li></ol></p><p>How are you?</p>
jQuery 代码:
$("p").filter(function(index) {
return $("ol", this).length == 0;
});
结果:
[ <p>How are you?</p> ]
filter参数可以使回调函数,这个 非常有用,如下面我碰到的:
<div class="color yellow"></div>
<div class="color blue"></div>
<div class="color green"></div>
<input type="hidden" name="form_color" id="form_color" />
判断到底点击了哪个div, (上面的div都含有color,可以作为filter条件)
我们可以这样写:
$("div").filter(function(){return $(this).hasClass('color');}).click(function(){
//do something
});