Home  >  Article  >  Web Front-end  >  Detailed analysis of filtering operations in jquery_jquery

Detailed analysis of filtering operations in jquery_jquery

WBOY
WBOYOriginal
2016-05-16 17:11:32909browse

1. Filtering

名称 说明 举例
eq( index ) 获取第N个元素 获取匹配的第二个元素:
$("p").eq(1)
filter( expr )

筛选出与指定表达式匹配的元素集合。

保留带有select类的元素:
$("p").filter(".selected")
filter( fn )

筛选出与指定函数返回值匹配的元素集合

这个函数内部将对每个对象计算一次 (正如 '$.each'). 如果调用的函数返回false则这个元素被删除,否则就会保留。

保留子元素中不含有ol的元素:

$("div").filter(function(index) {
  return $("ol", this).size() == 0;
});

is( expr )

注意: 这个函数返回的不是jQuery包装集而是Boolean值

用一个表达式来检查当前选择的元素集合,如果其中至少有一个元素符合这个给定的表达式就返回true。

如果没有元素符合,或者表达式无效,都返回'false'. 'filter' 内部实际也是在调用这个函数,所以,filter()函数原有的规则在这里也适用。

由于input元素的父元素是一个表单元素,所以返回true:
$("input[type='checkbox']").parent().is("form")
map( callback )

将一组元素转换成其他数组(不论是否是元素数组)

你可以用这个函数来建立一个列表,不论是值、属性还是CSS样式,或者其他特别形式。这都可以用'$.map()'来方便的建立

把form中的每个input元素的值建立一个列表:

$("p").append( $("input").map(function(){
  return $(this).val();
}).get().join(", ") );

not( expr ) 删除与指定表达式匹配的元素 从p元素中删除带有 select 的ID的元素:
$("p").not( $("#selected")[0] )

slice( start, end )

选取一个匹配的子集 选择第一个p元素:
$("p").slice(0, 1);
Name
Description Example
eq( index ) Get the Nth element Get the second matched element:
$("p").eq(1)
filter( expr ) Filter out the set of elements matching the specified expression. Retain elements with select class:
$("p").filter(".selected")
filter( fn ) Filter out the set of elements that match the return value of the specified function This function will internally calculate each object once (just like '$.each'). If the called function returns false, the element is deleted, otherwise it is retained. Retain elements that do not contain ol among the child elements:
$("div").filter(function(index) {
return $("ol", this).size() == 0;
});
is( expr)

Note: This function returns not a jQuery wrapper set but a Boolean value
Use an expression to check the currently selected set of elements, and return true if at least one element matches the given expression. If no elements match, or the expression is invalid, 'false' is returned. 'filter' actually calls this function internally, so the original rules of the filter() function also apply here. Since the parent element of the input element is a form element, true is returned:
$("input[type='checkbox']").parent().is("form" )
map( callback ) Convert a set of elements into other arrays (whether it is an array of elements or not) You can use this function to create a list, whether it is a value, attribute, CSS style, or other special form. This can be easily established using '$.map()' Create a list of the values ​​of each input element in the form:
$("p").append( $("input").map(function(){
return $(this).val();
}).get().join( ", ") );
not( expr ) Delete elements matching the specified expression Remove the element with the ID of select from the p element:
$("p").not( $("#selected")[0] )
slice( start, end ) Select a matching subset Select the first p element:
$("p").slice(0, 1);
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn