jQuery filter()示例

jQuery筛选器功能是一项有用的功能,可通过使用匹配的选择器或函数的测试从一组匹配的元素中提取元素。

1.过滤器(选择器)

在一组匹配的元素中,获取仅与filter()选择器匹配的元素。

例如,

$("div").filter("#div1").css('background-color', 'blue');

匹配所有div元素,然后选择ID为“ div1”的div元素,并将元素的背景色更改为蓝色。

2.过滤器(功能)

在一组匹配的元素中,获取通过功能测试的元素。 该函数在内部传递一个index参数,该参数代表匹配元素的索引,从0开始计数。

例如,

$('div').filter(function(index) {
	if(index==2 || index==3){ //0 index based
		return true;
	}
}).css('background-color', 'blue');

使所有div元素匹配,使用函数进行过滤以仅选择third(2)和four(3)div元素。

$('div').filter(function(index) {
	return $("b", this).length == 1;
}).css('background-color', 'blue');

使所有div元素匹配,使用功能过滤以选择包含<b>标签的div元素。

jQuery filter()示例

<html>
<head>
<title>jQuery filter example</title>
 
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>

</head>

<body>

<h1>jQuery filter example</h1>

<script type="text/javascript">

  $(document).ready(function(){

    $("#filterSelector").click(function () {
		
	$('div').css('background-color', 'white');
		
	$("div").filter("#div1").css('background-color', 'blue');
			
    });
	
    $("#filterFunction").click(function () {
		
	$('div').css('background-color', 'white');
			
	$('div').filter(function(index) {
		if(index==2 || index==3){ //0 index based
			return true;
		}
	}).css('background-color', 'blue');
		
    });
	
    $("#filterFunction2").click(function () {
		
	$('div').css('background-color', 'white');
		
	$('div').filter(function(index) {
		return $("b", this).length == 1;
	}).css('background-color', 'blue');
			
    });
	
  });
</script>
</head><body>

<div id="div1">
	<b>This is div 1 with 'b' tag</b>
</div>
<div id="div2">
	This is div 2
</div>
<div id="div3">
	<b>This is div 3 with 'b' tag</b>
</div>
<div id="div4">
	This is div 4
</div>

<br/>
<br/>
<br/>

<input type='button' value='filter(selector)' id='filterSelector'>
<input type='button' value='filter(index)' id='filterFunction'>
<input type='button' value='filter(index)+b' id='filterFunction2'>
</body>
</html>

翻译自: https://mkyong.com/jquery/jquery-filter-example/

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值