jQuery 获取对象 根据属性、内容匹配, 还有表单元素匹配

简介: 指定元素中包含 id 属性的, 如: $("span[id]")  代码如下: AAA BBB CCC DDD EEE FFF  指定元素中不包含 id 属性的, 如: $("span:not(span[id])") 或 $("span:not([id])")  代码如下: AA...

指定元素中包含 id 属性的, 如: $("span[id]") 

代码如下:

<span id="span1" name="S1">AAA</span><br/> 
<span id="span2" name="S2">BBB</span><br/> 
<span name="Sx3">CCC</span><br/> 
<span name="Sx4">DDD</span><br/> 
<div id="div1" name="Dx1">EEE</div> 
<div name="D2">FFF</div> 


指定元素中不包含 id 属性的, 如: $("span:not(span[id])") 或 $("span:not([id])") 

代码如下:

<span id="span1" name="S1">AAA</span><br/> 
<span id="span2" name="S2">BBB</span><br/> 
<span name="Sx3">CCC</span><br/> 
<span name="Sx4">DDD</span><br/> 
<div id="div1" name="Dx1">EEE</div> 
<div name="D2">FFF</div> 


包含 id 属性的, 如: $("body [id]") 

代码如下:

<span id="span1" name="S1">AAA</span><br/> 
<span id="span2" name="S2">BBB</span><br/> 
<span name="Sx3">CCC</span><br/> 
<span name="Sx4">DDD</span><br/> 
<div id="div1" name="Dx1">EEE</div> 
<div name="D2">FFF</div> 


符合元素值的, 如: $("span[name='S2']") 

代码如下:

<span id="span1" name="S1">AAA</span><br/> 
<span id="span2" name="S2">BBB</span><br/> 
<span name="Sx3">CCC</span><br/> 
<span name="Sx4">DDD</span><br/> 
<div id="div1" name="Dx1">EEE</div> 
<div name="D2">FFF</div> 


不符合元素值的, 如: $("span[name!='S2']") 

代码如下:

<span id="span1" name="S1">AAA</span><br/> 
<span id="span2" name="S2">BBB</span><br/> 
<span name="Sx3">CCC</span><br/> 
<span name="Sx4">DDD</span><br/> 
<div id="div1" name="Dx1">EEE</div> 
<div name="D2">FFF</div> 


元素值开头是?, 如: $("span[name^='S']") 

代码如下:

<span id="span1" name="S1">AAA</span><br/> 
<span id="span2" name="S2">BBB</span><br/> 
<span name="Sx3">CCC</span><br/> 
<span name="Sx4">DDD</span><br/> 
<div id="div1" name="Dx1">EEE</div> 
<div name="D2">FFF</div> 


元素值结尾是?, 如: $("html [name$='1']") 

代码如下:

<span id="span1" name="S1">AAA</span><br/> 
<span id="span2" name="S2">BBB</span><br/> 
<span name="Sx3">CCC</span><br/> 
<span name="Sx4">DDD</span><br/> 
<div id="div1" name="Dx1">EEE</div> 
<div name="D2">FFF</div> 


元素值包含?, 如: $("body [name*='x']") 

代码如下:

<span id="span1" name="S1">AAA</span><br/> 
<span id="span2" name="S2">BBB</span><br/> 
<span name="Sx3">CCC</span><br/> 
<span name="Sx4">DDD</span><br/> 
<div id="div1" name="Dx1">EEE</div> 
<div name="D2">FFF</div> 


多个属性条件, 如(有 id 且 name 开始是 "D"): $("body [id][name^='D']") 

代码如下:

<span id="span1" name="S1">AAA</span><br/> 
<span id="span2" name="S2">BBB</span><br/> 
<span name="Sx3">CCC</span><br/> 
<span name="Sx4">DDD</span><br/> 
<div id="div1" name="Dx1">EEE</div> 
<div name="D2">FFF</div> 


查找包含 "AB" 的 span: $("span:contains('AB')") 

代码如下:

<span>ABC</span><br/> 
<span><b>ABC</b></span><br/> 
<span></span> 
<div> 
<span>ABC</span><br/> 
<span><b>ABC</b></span><br/> 
<span></span> 
</div> 


从 div 中查找包含 "AB" 的 span: $("div span:contains('AB')") 

代码如下:

<span>ABC</span><br/> 
<span><b>ABC</b></span><br/> 
<span></span> 
<div> 
<span>ABC</span><br/> 
<span><b>ABC</b></span><br/> 
<span></span> 
</div> 


查找包含 的 span: $("span:has('b')") 

代码如下:

<span>ABC</span><br/> 
<span><b>ABC</b></span><br/> 
<span></span> 
<div> 
<span>ABC</span><br/> 
<span><b>ABC</b></span><br/> 
<span></span> 
</div> 


查找空的 span: $("span:empty") 

代码如下:

<span>ABC</span><br/> 
<span><b>ABC</b></span><br/> 
<span></span> 
<div> 
<span>ABC</span><br/> 
<span><b>ABC</b></span><br/> 
<span></span> 
</div> 


查找非空的(也就是作为父元素的) span: $("span:parent") 

代码如下:

<span>ABC</span><br/> 
<span><b>ABC</b></span><br/> 
<span></span> 
<div> 
<span>ABC</span><br/> 
<span><b>ABC</b></span><br/> 
<span></span> 
</div> 


:hidden 与 :visible 分别对应隐藏与显示的元素; 下例让已显示的变红, 让隐藏的显示为灰色. 

代码如下:

<!doctype html> 
<html> 
<head> 
<script src="http://code.jquery.com/jquery-1.4.2.min.js"></script> 
</head> 
<body> 
<div>111</div> 
<div>222</div> 
<div style="display:none">333</div> 
<div style="display:none">444</div> 
</body> 
</html> 
<script> 
$("div:visible").css("color", "red"); 
$("div:hidden").css("display", "").css("color", "silver"); 
</script> 


表单匹配: 
:input 匹配: 
<input ... /> 
<select></select> 
<textarea></textarea> 
<button></button> 

:text 匹配 <input type="text" /> 
:password 匹配 <input type="password" /> 
:radio 匹配 <input type="radio" /> 
:checkbox 匹配 <input type="checkbox" /> 
:submit 匹配 <input type="submit" /> 
:reset 匹配 <input type="reset" /> 
:image 匹配 <input type="image" /> 
:file 匹配 <input type="" /> 
:button 匹配 <button></button> 
:enabled 匹配 所有可用的 input 元素 
:disabled 匹配 所有不可用的 input 元素 
:checked 匹配 所有选中的被选中复选框、单选框 
:selected 匹配 所有选中的 option 元素

目录
相关文章
|
6天前
|
JavaScript 索引
|
26天前
|
JavaScript 前端开发
带完成百分比的jQuery表单插件
带完成百分比的jQuery表单插件
|
6月前
|
JavaScript
jQuery - 添加元素
通过 jQuery,可以很容易地添加新元素/内容。
67 10
|
7月前
|
JavaScript 前端开发
jQuery - 添加元素
jQuery - 添加元素
49 2
|
7月前
|
JavaScript 前端开发
jQuery - 添加元素
jQuery - 添加元素
51 6
|
6月前
|
移动开发 JSON 数据可视化
精选八款包括可视化CMS,jquery可视化表单,vue可视化拖拉,react可视化源码
精选八款包括可视化CMS,jquery可视化表单,vue可视化拖拉,react可视化源码
97 0
|
8月前
|
JavaScript
分别用jquery和js修改页面元素
分别用jquery和js修改页面元素
69 2
|
8月前
|
Devops 持续交付 测试技术
JSF遇上DevOps:开发流程将迎巨变?一篇文章带你领略高效协同的魅力!
【8月更文挑战第31天】本文探讨了如何在JavaServer Faces(JSF)开发中融入DevOps文化,通过持续集成与部署、自动化测试、监控与日志记录及反馈机制,提升软件交付速度与质量。文中详细介绍了使用Jenkins进行自动化部署、JUnit与Selenium进行自动化测试、ELK Stack进行日志监控的具体方法,并强调了持续改进的重要性。
72 0
|
JavaScript 前端开发
使用 jQuery对象设置页面中 <ul> 元素的标记类型,并使用 DOM 对象设置 <li> 元素的浮动属性和右边距。使用jQuery 对象和 DOM 对象设置页面元素属性
使用 jQuery对象设置页面中 <ul> 元素的标记类型,并使用 DOM 对象设置 <li> 元素的浮动属性和右边距。使用jQuery 对象和 DOM 对象设置页面元素属性
205 0
使用 jQuery对象设置页面中 <ul> 元素的标记类型,并使用 DOM 对象设置 <li> 元素的浮动属性和右边距。使用jQuery 对象和 DOM 对象设置页面元素属性
|
JavaScript 开发者
jQuery_ 复制元素、DOM 插入到现有元素外|学习笔记
快速学习 jQuery_ 复制元素、DOM 插入到现有元素外
251 0
jQuery_ 复制元素、DOM 插入到现有元素外|学习笔记