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 相关文章推荐
由prototype_1.3.1进入javascript殿堂-类的初探
Nov 06 Javascript
JS 获取浏览器和屏幕宽高等信息代码
Mar 31 Javascript
node.js中的forEach()是同步还是异步呢
Jan 29 Javascript
JQuery中属性过滤选择器用法实例分析
May 18 Javascript
通过点击jqgrid表格弹出需要的表格数据
Dec 02 Javascript
AngularJS国际化详解及示例代码
Aug 18 Javascript
jquery实现自适应banner焦点图
Feb 16 Javascript
微信小程序 本地数据存储实例详解
Apr 13 Javascript
使用JavaScript进行表单校验功能
Aug 01 Javascript
vue2.0 资源文件assets和static的区别详解
Apr 08 Javascript
AngularJS中的作用域实例分析
May 16 Javascript
vue强制刷新组件的方法示例
Feb 28 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
经典的星际争霸,满是回忆的BGM
2020/04/09 星际争霸
windows7下安装php的imagick和imagemagick扩展教程
2014/07/04 PHP
thinkphp中空模板与空模块的用法实例
2014/11/26 PHP
基于Jquery的仿Windows Aero弹出窗(漂亮的关闭按钮)
2010/09/28 Javascript
兼容IE和Firefox的javascript获取iframe文档内容的函数
2011/08/15 Javascript
jQuery图片的展开和收缩实现代码
2013/04/16 Javascript
js的正则test,match,exec详细解析
2014/01/29 Javascript
JS将制定内容复制到剪切板示例代码
2014/02/11 Javascript
node.js中的path.extname方法使用说明
2014/12/09 Javascript
JS实现兼容性好,自动置顶的淘宝悬浮工具栏效果
2015/09/18 Javascript
Angularjs中UI Router全攻略
2016/01/29 Javascript
浅析JavaScriptSerializer类的序列化与反序列化
2016/11/22 Javascript
JS验证input输入框(字母,数字,符号,中文)
2017/03/23 Javascript
JavaScript闭包和回调详解
2017/08/09 Javascript
JavaScript通过mouseover()实现图片变大效果的示例
2017/12/20 Javascript
JS基于递归实现网页版计算器的方法分析
2017/12/20 Javascript
Node使用Sequlize连接Mysql报错:Access denied for user ‘xxx’@‘localhost’
2018/01/03 Javascript
详解小程序云开发攻略(解决最棘手的问题)
2019/09/30 Javascript
如何实现js拖拽效果及原理解析
2020/05/08 Javascript
JavaScript 面向对象程序设计详解【类的创建、实例对象、构造函数、原型等】
2020/05/12 Javascript
vue+animation实现翻页动画
2020/06/29 Javascript
[01:46]TI4西雅图DOTA2前线报道 中国选手抱团调时差
2014/07/08 DOTA
[56:17]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第三场 8.22
2019/09/05 DOTA
Flask框架的学习指南之用户登录管理
2016/11/20 Python
Python数据类型之Number数字操作实例详解
2019/05/08 Python
关于django 1.10 CSRF验证失败的解决方法
2019/08/31 Python
python scipy卷积运算的实现方法
2019/09/16 Python
python3获取url文件大小示例代码
2019/09/18 Python
TensorFlow tensor的拼接实例
2020/01/19 Python
Python使用xpath实现图片爬取
2020/09/16 Python
iHerb台湾:维生素、保健品和健康产品
2018/01/31 全球购物
现代家居用品及礼品:LBC Modern
2018/06/24 全球购物
上课迟到检讨书
2014/02/19 职场文书
建国大业观后感800字
2015/06/01 职场文书
大学生创业,为什么都会选择快餐饮?
2019/08/08 职场文书
Python 详解通过Scrapy框架实现爬取百度新冠疫情数据流程
2021/11/11 Python