jQuery 复合选择器应用的几个例子


Posted in Javascript onSeptember 11, 2014

<!-- 本文例子所引用的jQuery版本为 jQuery-1.8.3.min.js -->

一. 复合选择器对checkbox的相关操作

<input type="checkbox" id="ckb_1" /> 
<input type="checkbox" id="ckb_2" disabled="true" /> 
<input type="checkbox" id="ckb_3" /> 
<input type="checkbox" id="ckb_4" /> 
<input type="button" id="btn" value="点击">

例.需要把类型为checkbox,同时"可用"的元素设置成"已选择"

方法①使用属性过滤选择器 [type='checkbox'] 和 [disabled!=disabled]

$("input[type='checkbox'][disabled!=disabled]").attr("checked",true);

注意在这个复合选择器中,"可用"元素的选择应使用 disabled!=disabled,而设置属性时应使用 attr("checked",true)。disabled属性和checked属性的用法类似。

方法②使用表单选择器 :checkbox 和属性过滤选择器 [disabled!=disabled]

$('input:checkbox[disabled!=disabled]').attr("checked",true);

方法③使用表单选择器 :checkbox 和表单对象属性过滤选择器 :enabled

$(':checkbox:enabled').attr("checked",true);

方法④使用.each()遍历

$("input[type=checkbox]").each(function(){

if ($(this).attr("disabled") != "disabled") {

$(this).attr("checked",true);
}
});

没用到复合选择器。需要注意的和方法①中一样,在判断属性时应该判断是"disabled"还是"enable",而不是false或true。而设置属性时既可以用"disabled"或"enable",也可以用false或true。

二. 复合选择器的其他例子

<ul>
<li >第一行</li>
<li class="showli">第二行</li>
<li class="showli">第三行</li>
<li>第四行</li>
<li style="display:none">第五行</li>
<li class="showli">第六行</li>
<li>第七行</li>
</ul>

例. 把第一个class为showli的li元素背景设为红色

$("ul li[class=showli]:eq(0)").css("background":"red");

结果是'<li class="showli">第二行</li>'的背景变成了红色。使用了属性过滤选择器 [class=showli] 和基本过滤选择器 eq(0)

例. 把第五个可见的li的背景设为红色

$("ul li:visible:eq(4)").css({"display":"blaock","background":"red"});

结果是'<li class="showli">第六行</li>'的背景变成了红色,display:block是为了检测隐藏的li是否会被:visible过滤,display:none下是看不到红色背景的。使用了可见性过滤选择器 :visible

例.(比较绕的)把第二个class为showli的li后面可见的第二个li的背景设成红色

$("ul li.showli:eq(1)").nextAll("li:visible:eq(1)").css({"display":"block","background":"red"});

结果是'<li class="showli">第六行</li>'的背景变成了红色。

Javascript 相关文章推荐
javascript之典型高阶函数应用介绍二
Jan 10 Javascript
ExtJS自定义主题(theme)样式详解
Nov 18 Javascript
使用jquery animate创建平滑滚动效果(可以是到顶部、到底部或指定地方)
May 27 Javascript
使用jquery组件qrcode生成二维码及应用指南
Feb 22 Javascript
Js与Jq 获取页面元素值的方法和差异对比
Apr 30 Javascript
jquery实现可自动判断位置的弹出层效果代码
Oct 12 Javascript
AngularJs动态加载模块和依赖注入详解
Jan 11 Javascript
一系列Bootstrap导航条使用方法分享
Apr 29 Javascript
封装的dialog插件 基于bootstrap模态对话框的简单扩展
Aug 10 Javascript
js实现从左向右滑动式轮播图效果
Jul 07 Javascript
安装vue-cli报错 -4058 的解决方法
Oct 19 Javascript
JavaScript中Object、map、weakmap的区别分析
Dec 15 Javascript
使用js dom和jquery分别实现简单增删改
Sep 11 #Javascript
sogou地图API用法实例教程
Sep 11 #Javascript
当前流行的JavaScript代码风格指南
Sep 10 #Javascript
在css加载完毕后自动判断页面是否加入css或js文件
Sep 10 #Javascript
JQuery拖动表头边框线调整表格列宽效果代码
Sep 10 #Javascript
jQuery通过点击行来删除HTML表格行的实现示例
Sep 10 #Javascript
javascipt:filter过滤介绍及使用
Sep 10 #Javascript
You might like
十天学会php之第一天
2006/10/09 PHP
PHP判断表达式中括号是否匹配的简单实例
2016/10/22 PHP
在laravel框架中使用model层的方法
2019/10/08 PHP
PHP safe_mode开启对于PHP系统函数有什么影响
2020/11/10 PHP
js 判断脚本加载完毕的代码
2011/07/13 Javascript
JavaScript 实现类的多种方法实例
2013/05/01 Javascript
javascript间隔刷新的简单实例
2013/11/14 Javascript
Extjs4中Form的使用之本地hiddenfield
2013/11/26 Javascript
jQuery中:radio选择器用法实例
2015/01/03 Javascript
JavaScript获取表格(table)当前行的值、删除行、增加行
2015/07/03 Javascript
JS实现带有抽屉效果的产品类网站多级导航菜单代码
2015/09/15 Javascript
JavaScript制作简易计算器(不用eval)
2017/02/05 Javascript
JavaScript观察者模式(publish/subscribe)原理与实现方法
2017/03/30 Javascript
浅析微信小程序modal弹窗关闭默认会执行cancel问题
2019/10/14 Javascript
小程序实现可拖动的悬浮按钮
2020/09/07 Javascript
antd中table展开行默认展示,且不需要前边的加号操作
2020/11/02 Javascript
vant组件中 dialog的确认按钮的回调事件操作
2020/11/04 Javascript
[04:42]2015国际邀请赛CDEC战队晋级之路
2015/08/13 DOTA
Python Requests 基础入门
2016/04/07 Python
Python的多维空数组赋值方法
2018/04/13 Python
Python变量类型知识点总结
2019/02/18 Python
Python API自动化框架总结
2019/11/12 Python
使用anaconda安装pytorch的实现步骤
2020/09/03 Python
Python爬虫获取op.gg英雄联盟英雄对位胜率的源码
2021/01/29 Python
巧用CSS3 border实现图片遮罩效果代码
2012/04/09 HTML / CSS
宝拉珍选美国官网:Paula’s Choice美国
2018/01/07 全球购物
美国领先的医疗警报服务:Philips Lifeline
2018/03/12 全球购物
Watchshop德国:欧洲在线手表No.1
2019/06/20 全球购物
港湾网络笔试题
2014/04/19 面试题
生物制药毕业生自荐信
2013/10/16 职场文书
智能电子应届生求职信
2013/11/10 职场文书
服务承诺书
2015/01/19 职场文书
2015年中学体育教师工作总结
2015/10/23 职场文书
教师教育心得体会
2016/01/19 职场文书
基于Redis延迟队列的实现代码
2021/05/13 Redis
如何通过一篇文章了解Python中的生成器
2022/04/02 Python