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 相关文章推荐
asp javascript 实现关闭窗口时保存数据的办法
Nov 24 Javascript
window.opener用法和用途实例介绍
Aug 19 Javascript
js用闭包遍历树状数组的方法
Mar 19 Javascript
href下载文件根据id取url并下载
May 28 Javascript
剖析Node.js异步编程中的回调与代码设计模式
Feb 16 Javascript
jquery easyUI中ajax异步校验用户名
Aug 19 Javascript
JavaScript实现清空(重置)文件类型INPUT元素值的方法
Nov 17 Javascript
JS基于onclick事件实现单个按钮的编辑与保存功能示例
Feb 13 Javascript
Vue实现点击后文字变色切换方法
Feb 11 Javascript
浅谈layer的Icon样式以及一些常用的layer窗口使用方法
Sep 11 Javascript
使用webpack/gulp构建TypeScript项目的方法示例
Dec 18 Javascript
JS实现电商商品展示放大镜特效
Jan 07 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分页时出现的Fatal error的解决方法
2011/04/18 PHP
获取URL文件名后缀
2013/10/24 PHP
浅谈php和js中json的编码和解码
2016/10/24 PHP
PHP 年月日的三级联动实例代码
2017/05/24 PHP
一个JavaScript继承的实现
2006/10/24 Javascript
js弹窗代码 可以指定弹出间隔
2010/07/03 Javascript
小试JQuery的AutoComplete插件
2011/05/04 Javascript
jQuery向上遍历DOM树之parents(),parent(),closest()之间的区别
2013/12/02 Javascript
如何正确使用Nodejs 的 c++ module 链接到 OpenSSL
2014/08/03 NodeJs
元素绑定click点击事件方法
2015/06/08 Javascript
基于JQuery实现仿网易邮箱全屏动感滚动插件fullPage
2015/09/20 Javascript
第二篇Bootstrap起步
2016/06/21 Javascript
微信小程序 location API实例详解
2016/10/02 Javascript
非常实用的vue导航钩子
2017/03/20 Javascript
Kotlin学习第一步 kotlin语法特性
2017/05/25 Javascript
实例详解BootStrap的动态模态框及静态模态框
2018/08/13 Javascript
vue服务端渲染页面缓存和组件缓存的实例详解
2018/09/18 Javascript
Vue中JS动画与Velocity.js的结合使用
2019/02/13 Javascript
[06:04]DOTA2英雄梦之声Vol19卓尔游侠
2014/06/20 DOTA
[48:52]DOTA2上海特级锦标赛A组小组赛#2 Secret VS CDEC第一局
2016/02/25 DOTA
Python文件夹与文件的相关操作(推荐)
2016/07/25 Python
python+pyqt5实现图片批量缩放工具
2019/03/18 Python
Python3中的bytes和str类型详解
2019/05/02 Python
pandas的排序和排名的具体使用
2019/07/31 Python
Python编程快速上手——PDF文件操作案例分析
2020/02/28 Python
新手学python应该下哪个版本
2020/06/11 Python
英国书籍、CD、DVD和游戏的第一道德零售商:Awesome Books
2020/02/22 全球购物
实现strstr功能,即在父串中寻找子串首次出现的位置
2016/08/05 面试题
XML文档面试题
2015/08/05 面试题
骨干教师培训制度
2014/01/13 职场文书
家长给小学生的评语
2014/01/30 职场文书
上课随便讲话检讨书
2014/09/12 职场文书
婚前保证书范文
2015/02/28 职场文书
周一早安温馨问候祝福语!
2019/07/15 职场文书
优秀创业计划书分享
2019/07/19 职场文书
python3使用diagrams绘制架构图的步骤
2021/04/08 Python