`

jQuery - 选择器

 
阅读更多

原文链接 - http://www.cnblogs.com/hulang/archive/2011/01/12/1933771.html

jQuery 的选择器可谓之强大无比,这里简单地总结一下常用的元素查找方法

$("#myELement")    选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到的是唯一的元素 

$("div")           选择所有的div标签元素,返回div元素数组 

$(".myClass")      选择使用myClass类的css的所有元素 

$("*")             选择文档中的所有的元素,可以运用多种的选择方式进行联合选择:例如$("#myELement,div,.myclass")

层叠选择器: 

$("form input")         选择所有的form元素中的input元素 

$("#main > *")          选择id值为main的所有的子元素 

$("label + input")     选择所有的label元素的下一个input元素节点,经测试选择器返回的是label标签后面直接跟一个input标签的所有input标签元素 

$("#prev ~ div")       同胞选择器,该选择器返回的为id为prev的标签元素的所有的属于同一个父元素的div标签

基本过滤选择器: 

$("tr:first")               选择所有tr元素的第一个 

$("tr:last")                选择所有tr元素的最后一个 

$("input:not(:checked) + span")  

过滤掉:checked的选择器的所有的input元素

$("tr:even")               选择所有的tr元素的第0,2,4... ...个元素(注意:因为所选择的多个元素时为数组,所以序号是从0开始)

$("tr:odd")                选择所有的tr元素的第1,3,5... ...个元素 

$("td:eq(2)")             选择所有的td元素中序号为2的那个td元素 

$("td:gt(4)")             选择td元素中序号大于4的所有td元素 

$("td:lt(4)")              选择td元素中序号小于4的所有的td元素 

$(":header")            选择h1、h2、h3之类的

$("div:animated")     选择正在执行动画效果的元素

内容过滤选择器:

$("div:contains('John')") 选择所有div中含有John文本的元素 

$("td:empty")           选择所有的为空(也不包括文本节点)的td元素的数组 

$("div:has(p)")        选择所有含有p标签的div元素 

$("td:parent")          选择所有的以td为父节点的元素数组 

可视化过滤选择器:

$("div:hidden")        选择所有的被hidden的div元素 

$("div:visible")        选择所有的可视化的div元素 

属性过滤选择器:

$("div[id]")              选择所有含有id属性的div元素 

$("input[name='newsletter']")    选择所有的name属性等于'newsletter'的input元素

$("input[name!='newsletter']") 选择所有的name属性不等于'newsletter'的input元素

$("input[name^='news']")         选择所有的name属性以'news'开头的input元素 

$("input[name$='news']")         选择所有的name属性以'news'结尾的input元素 

$("input[name*='man']")          选择所有的name属性包含'news'的input元素

$("input[id][name$='man']")    可以使用多个属性进行联合选择,该选择器是得到所有的含有id属性并且那么属性以man结尾的元素

子元素过滤选择器:

$("ul li:nth-child(2)"),$("ul li:nth-child(odd)"),$("ul li:nth-child(3n + 1)")

$("div span:first-child")          返回所有的div元素的第一个子节点的数组 

$("div span:last-child")           返回所有的div元素的最后一个节点的数组 

$("div button:only-child")       返回所有的div中只有唯一一个子节点的所有子节点的数组

表单元素选择器:

$(":input")                  选择所有的表单输入元素,包括input, textarea, select 和 button

$(":text")                     选择所有的text input元素 

$(":password")           选择所有的password input元素 

$(":radio")                   选择所有的radio input元素 

$(":checkbox")            选择所有的checkbox input元素 

$(":submit")               选择所有的submit input元素 

$(":image")                 选择所有的image input元素 

$(":reset")                   选择所有的reset input元素 

$(":button")                选择所有的button input元素 

$(":file")                     选择所有的file input元素 

$(":hidden")               选择所有类型为hidden的input元素或表单的隐藏域

表单元素过滤选择器:

$(":enabled")             选择所有的可操作的表单元素 

$(":disabled")            选择所有的不可操作的表单元素 

$(":checked")            选择所有的被checked的表单元素 

$("select option:selected") 选择所有的select 的子元素中被selected的元素

 

选取一个 name 为”S_03_22″的input text框的上一个td的text值

$(”input[@ name =S_03_22]“).parent().prev().text()

名字以”S_”开始,并且不是以”_R”结尾的

$(”input[@ name ^='S_']“).not(”[@ name $='_R']“)

一个名为 radio_01的radio所选的值

$(”input[@ name =radio_01][@checked]“).val();

 

 

$("A B") 查找A元素下面的所有子节点,包括非直接子节点

$("A>B") 查找A元素下面的直接子节点

$("A+B") 查找A元素后面的兄弟节点,包括非直接子节点

$("A~B") 查找A元素后面的兄弟节点,不包括非直接子节点

1. $("A B") 查找A元素下面的所有子节点,包括非直接子节点

例子:找到表单中所有的 input 元素

HTML 代码:

 
 
 
 
 
 
 
 
 
10
<form>
    <label>Name:</label>
    <input name="name" />
    <fieldset>
      <label>Newsletter:</label>
      <input name="newsletter" />
</fieldset>
</form>
<input name="none" /><span style='font-family: verdana,
"courier new"; font-size: medium;' face="verdana, 'courier new'" size="4">span style="line-height: 21px; font-size: 14px; white-space: normal;">
</span></span>

jQuery 代码:

$("form input") 

结果:

[ <input name="name" />, <input name="newsletter" /> ]

2. $("A>B") 查找A元素下面的直接子节点 

例子:匹配表单中所有的子级input元素。

HTML 代码:

1
2
3
4
5
6
7
8
9
10
<form>
<label>Name:</label>
<input name="name" />
<fieldset>
      <label>Newsletter:</label>
      <input name="newsletter" />
</fieldset>
</form>
<input name="none" /><span style='font-family: verdana, "courier new"; font-size: medium;' face="verdana, 'courier new'" size="4"><span style="line-height: 21px; font-size: 14px; white-space: normal;">
</span></span>

jQuery 代码:

$("form > input") 

结果:

[ <input name="name" /> ]

3. $("A+B") 查找A元素后面的兄弟节点,包括非直接子节点 

例子:匹配所有跟在 label 后面的 input 元素

HTML 代码:

1
2
3
4
5
6
7
8
9
<form>
<label>Name:</label>
<input name="name" />
<fieldset>
      <label>Newsletter:</label>
      <input name="newsletter" />
</fieldset>
</form>
<input name="none" />

 jQuery 代码:

 

$("label + input") 

结果:

[ <input name="name" />, <input name="newsletter" /> ]

 

4. $("A~B") 查找A元素后面的兄弟节点,不包括非直接子节点 

例子:找到所有与表单同辈的 input 元素

HTML 代码:

1
2
3
4
5
6
7
8
9
10
<form>
<label>Name:</label>
<input name="name" />
<fieldset>
      <label>Newsletter:</label>
      <input name="newsletter" />
</fieldset>
</form>
<input name="none" /> <span style='font-family: verdana, "courier new"; font-size: medium;' face="verdana, 'courier new'" size="4"><span style="line-height: 21px; font-size: 14px; white-space: normal;">
</span></span>

jQuery 代码:

$("form ~ input") 

结果:

[ <input name="none" /> ]

分享到:
评论

相关推荐

    jquery-ui.css、jquery-ui.js下载

    jQuery UI是基于JavaScript库jQuery的一个扩展,它提供了一系列丰富的用户界面组件,包括但不限于对话框(Dialogs)、日期选择器(Datepickers)、拖放功能(Drag and Drop)、排序功能(Sortable)以及各种可自定义...

    jquery-3.4.1_jquery_3.4.1.js_jquery-3.4.1_sangat1_jquery3.4.1_jq

    综上所述,jQuery 3.4.1是一个强大的JavaScript库,它的主要特点包括高效的选择器引擎、简洁的API、丰富的插件生态系统和跨浏览器兼容性。通过引入"jquery-3.4.1.js",开发者可以轻松地实现各种前端功能,如动态修改...

    jQuery-1.12.4.js和jQuery-1.8.3.min.js

    这个版本包含了丰富的选择器、DOM操作、事件处理、动画效果以及Ajax等功能。1.x系列的主要特点是向后兼容,支持广泛的浏览器,包括一些较旧的版本,这使得它在那些无法或不易更新浏览器的环境中非常有用。1.12.4修复...

    jquery-ui-1.8.16.custom.min.js/jquery-ui-1.8.16.custom.css

    这个文件包含了各种UI组件的实现,如对话框(Dialog)、滑块(Slider)、日期选择器(Datepicker)、拖放功能(Draggable)、可排序元素(Sortable)以及许多其他交互元素。 `jquery-ui-1.8.16.custom.css` 文件则...

    jquery-3.1.1.js和jquery-3.1.1.min.js

    它提供了丰富的API,包括选择器(如`$()`)、DOM操作(如`append()`、`remove()`)、事件处理(如`on()`、`off()`)、动画(如`animate()`)以及Ajax请求(如`$.ajax()`)等,使得JavaScript编程变得更加简单和高效...

    jquery-ui-1.8.2.custom.min.js,jquery-ui-1.8.4.custom.css

    1.8.2是这个版本的发布编号,表示它是在2010年左右发布的,当时jQuery UI已经包含了大量的组件,如对话框(Dialog)、拖放(Draggable)、可排序(Sortable)、日期选择器(Datepicker)等。 接下来,`jquery-ui-...

    jquery-confirm.js和jquery-form.js

    通过使用`jquery-confirm`,你可以自定义对话框的标题、内容、按钮样式、图标等,还可以添加回调函数以响应用户的选择。例如,当用户点击“取消”时,可以取消操作;点击“确认”时,执行相应的处理逻辑。 `jquery-...

    jquery插件jquery-ui-1.8.2.custom.min.js

    首先,jQuery UI的核心在于它提供了大量预定义的UI组件,如日期选择器、对话框、滑块、排序列表等。这些组件能够帮助开发者快速构建出具有专业外观和行为的网页元素,无需从零开始编写复杂的JavaScript代码。"jquery...

    jquery-1.9.1.js 、jquery-1.9.1.min.js 【官方jquery包 js】

    选择器是jQuery的精髓,它极大地简化了CSS选择器的使用,如`$("#id")`用于选取ID为`id`的元素,`$(".class")`用于选取所有class为`class`的元素。DOM操作则允许我们方便地添加、删除和修改元素,如`$(element).html...

    最新版JQuery-jquery-3.2.1.min.js

    虽然`jQuery.holdReady()`和`jQuery.isArray()`被移除,但jQuery 3.2.1仍然提供了丰富的API,包括选择器、DOM操作、事件处理、动画、Ajax等。例如: - **选择器**:使用CSS选择器,如`$("#id")`,`.class`,`...

    jquery-3.5.1.min.js_jquery-3.5.1.min.js_jquery_

    jQuery的核心特性包括选择器、DOM操作、事件处理、动画效果以及Ajax操作。选择器是jQuery的精髓,它简化了JavaScript中获取DOM元素的方式,如"$()"函数可以轻松选取HTML元素。DOM操作则提供了一整套方法,如$("#id")...

    jquery-ui-1.10.2.custom

    2. **Widgets**:包括如对话框(Dialog)、滑块(Slider)、日期选择器(Datepicker)、进度条(Progressbar)、拖放(Draggable)、可排序(Sortable)和可堆叠(Resizable)等。这些组件极大地简化了常见的用户...

    最新jquery-2.1.1.js以及jquery-2.1.1.min.js文件

    1. **选择器**:jQuery提供了丰富的CSS选择器,使得开发者可以通过简单的语法获取DOM元素,如`$("#id")`、`$(".class")`、`$("tag")`等。 2. **DOM操作**:jQuery提供了便利的方法来创建、修改、添加和删除DOM元素...

    jquery-1.11.1.js 、jquery-1.11.1.min.js 【官方jquery包 js】

    `selector`可以是CSS选择器,如`$("#id")`选取ID为`id`的元素,`$(".class")`选取所有class为`class`的元素。 - `$(element).html()`:获取或设置元素的HTML内容。 - `$(element).append()`/`.prepend()`:在元素...

    jquery-ui.min.js

    这个文件包含了jQuery UI的所有核心组件,如对话框(Dialog)、拖放(Draggable)、可排序(Sortable)、可折叠(Accordion)、时间选择器(Datepicker)等,以及众多动画效果和实用工具函数。由于进行了压缩,代码...

    jquery-2.0.0.js 、jquery-2.0.0.min.js 【官方jquery包 js】

    - **更好的DOM操作**:jQuery 2.0.0进一步增强了选择器引擎,提升了对CSS3选择器的支持,使得开发者能更方便地选取和操作DOM元素。 2. **API改进与新功能** - **`.on()`事件绑定**:在2.0.0中,`.on()`成为主要...

    jquery插件jquery-ui-1.8.18.custom.min.js及css文件

    jQuery UI 是一个基于 jQuery 库的用户界面库,它提供了丰富的交互效果、可定制的主题以及各种UI组件,如日期选择器、对话框、滑块等。在本篇文章中,我们将深入探讨其自定义版本 `jquery-ui-1.8.18.custom.min.js` ...

    jquery-2.1.4.js 、jquery-2.1.4.min.js 【jquery包 js】

    1. **DOM操作**:jQuery提供了丰富的选择器,如ID选择器、类选择器等,使得选取DOM元素变得简单。此外,还可以方便地进行元素的添加、删除和修改。 2. **事件处理**:通过`.on()`方法,可以方便地绑定和解绑事件,...

    jquery-1.8.3.js 、jquery-1.8.3.min.js 【官方jquery包 js】

    jQuery 1.8.3版本在功能上继承了jQuery一贯的优雅特性,包括选择器引擎(Sizzle)、链式调用、DOM操作、事件处理、动画效果和Ajax请求。其中,选择器引擎使得开发者可以通过CSS1-CSS3的选择器轻松选取DOM元素,而...

    jquery-ui-1.7.3.custom 完整开发包

    - **DatePicker**:日期选择器,方便用户选择日期。 - **Tabs**:选项卡,将内容分隔成多个页面。 - **Sortable**:可排序列表,允许用户通过拖放重新排列元素。 - **Resizable**:可调整大小元素,用户可以改变元素...

Global site tag (gtag.js) - Google Analytics