jQuery选择器总结

 
  
1 jQuery 的选择器可谓之强大无比,这里简单地总结一下常用的元素查找方法
2
3 $( " #myELement " ) 选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到的是唯一的元素
4 $( " div " ) 选择所有的div标签元素,返回div元素数组
5 $( " .myClass " ) 选择使用myClass类的css的所有元素
6 $( " * " ) 选择文档中的所有的元素,可以运用多种的选择方式进行联合选择:例如$( " #myELement,div,.myclass " )
7
8 层叠选择器:
9 $( " form input " ) 选择所有的form元素中的input元素
10 $( " #main > * " ) 选择id值为main的所有的子元素
11 $( " label + input " ) 选择所有的label元素的下一个input元素节点,经测试选择器返回的是label标签后面直接跟一个input标签的所有input标签元素
12 $( " #prev ~ div " ) 同胞选择器,该选择器返回的为id为prev的标签元素的所有的属于同一个父元素的div标签
13
14 基本过滤选择器:
15 $( " tr:first " ) 选择所有tr元素的第一个
16 $( " tr:last " ) 选择所有tr元素的最后一个
17 $( " input:not(:checked) + span " )
18
19 过滤掉:checked的选择器的所有的input元素
20
21 $( " tr:even " ) 选择所有的tr元素的第0, 2 4 ... ...个元素(注意:因为所选择的多个元素时为数组,所以序号是从0开始)
22
23 $( " tr:odd " ) 选择所有的tr元素的第1, 3 5 ... ...个元素
24 $( " td:eq(2) " ) 选择所有的td元素中序号为2的那个td元素
25 $( " td:gt(4) " ) 选择td元素中序号大于4的所有td元素
26 $( " td:ll(4) " ) 选择td元素中序号小于4的所有的td元素
27 $( " :header " )
28 $( " div:animated " )
29 内容过滤选择器:
30
31 $( " div:contains('John') " ) 选择所有div中含有John文本的元素
32 $( " td:empty " ) 选择所有的为空(也不包括文本节点)的td元素的数组
33 $( " div:has(p) " ) 选择所有含有p标签的div元素
34 $( " td:parent " ) 选择所有的以td为父节点的元素数组
35 可视化过滤选择器:
36
37 $( " div:hidden " ) 选择所有的被hidden的div元素
38 $( " div:visible " ) 选择所有的可视化的div元素
39 属性过滤选择器:
40
41 $( " div[id] " ) 选择所有含有id属性的div元素
42 $( " input[name='newsletter'] " ) 选择所有的name属性等于 ' newsletter ' 的input元素
43
44 $( " input[name!='newsletter'] " ) 选择所有的name属性不等于 ' newsletter ' 的input元素
45
46 $( " input[name^='news'] " ) 选择所有的name属性以 ' news ' 开头的input元素
47 $( " input[name$='news'] " ) 选择所有的name属性以 ' news ' 结尾的input元素
48 $( " input[name*='man'] " ) 选择所有的name属性包含 ' news ' 的input元素
49
50 $( " input[id][name$='man'] " ) 可以使用多个属性进行联合选择,该选择器是得到所有的含有id属性并且那么属性以man结尾的元素
51
52 子元素过滤选择器:
53
54 $( " ul li:nth-child(2) " ),$( " ul li:nth-child(odd) " ),$( " ul li:nth-child(3n + 1) " )
55
56 $( " div span:first-child " ) 返回所有的div元素的第一个子节点的数组
57 $( " div span:last-child " ) 返回所有的div元素的最后一个节点的数组
58 $( " div button:only-child " ) 返回所有的div中只有唯一一个子节点的所有子节点的数组
59
60 表单元素选择器:
61
62 $( " :input " ) 选择所有的表单输入元素,包括input, textarea, select 和 button
63
64 $( " :text " ) 选择所有的text input元素
65 $( " :password " ) 选择所有的password input元素
66 $( " :radio " ) 选择所有的radio input元素
67 $( " :checkbox " ) 选择所有的checkbox input元素
68 $( " :submit " ) 选择所有的submit input元素
69 $( " :image " ) 选择所有的image input元素
70 $( " :reset " ) 选择所有的reset input元素
71 $( " :button " ) 选择所有的button input元素
72 $( " :file " ) 选择所有的file input元素
73 $( " :hidden " ) 选择所有类型为hidden的input元素或表单的隐藏域
74
75 表单元素过滤选择器:
76
77 $( " :enabled " ) 选择所有的可操作的表单元素
78 $( " :disabled " ) 选择所有的不可操作的表单元素
79 $( " :checked " ) 选择所有的被checked的表单元素
80 $( " select option:selected " ) 选择所有的select 的子元素中被selected的元素
81
82
83
84 选取一个 name 为”S_03_22″的input text框的上一个td的text值
85 $(”input[@ name = S_03_22]“).parent().prev().text()
86
87 名字以”S_”开始,并且不是以”_R”结尾的
88 $(”input[@ name ^= ' S_ ' ]“).not(”[@ name $ = ' _R ' ]“)
89
90 一个名为 radio_01的radio所选的值
91 $(”input[@ name = radio_01][@checked]“).val();
92
93
94
95
96
97 $( " A B " ) 查找A元素下面的所有子节点,包括非直接子节点
98 $( " A>B " ) 查找A元素下面的直接子节点
99 $( " A+B " ) 查找A元素后面的兄弟节点,包括非直接子节点
100 $( " A~B " ) 查找A元素后面的兄弟节点,不包括非直接子节点
101
102 1 . $( " A B " ) 查找A元素下面的所有子节点,包括非直接子节点
103
104 例子:找到表单中所有的 input 元素
105
106 HTML 代码:
107
108 < form >
109 < label > Name: < / label>
110 < input name = " name " / >
111 < fieldset >
112 < label > Newsletter: < / label>
113 < input name = " newsletter " / >
114 < / fieldset>
115 < / form>
116 < input name = " none " / >
117 jQuery 代码:
118
119 $( " form input " )
120 结果:
121
122 [ < input name = " name " / >, <input name="newsletter" / > ]
123
124 2 . $( " A>B " ) 查找A元素下面的直接子节点
125 例子:匹配表单中所有的子级input元素。
126
127 HTML 代码:
128
129 < form >
130 < label > Name: < / label>
131 < input name = " name " / >
132 < fieldset >
133 < label > Newsletter: < / label>
134 < input name = " newsletter " / >
135 < / fieldset>
136 < / form>
137 < input name = " none " / >
138 jQuery 代码:
139
140 $( " form > input " )
141 结果:
142
143 [ < input name = " name " / > ]
144
145 3 . $( " A+B " ) 查找A元素后面的兄弟节点,包括非直接子节点
146 例子:匹配所有跟在 label 后面的 input 元素
147
148 HTML 代码:
149
150 < form >
151 < label > Name: < / label>
152 < input name = " name " / >
153 < fieldset >
154 < label > Newsletter: < / label>
155 < input name = " newsletter " / >
156 < / fieldset>
157 < / form>
158 < input name = " none " / >
159 jQuery 代码:
160
161 $( " label + input " )
162 结果:
163
164 [ < input name = " name " / >, <input name="newsletter" / > ]
165
166
167 4 . $( " A~B " ) 查找A元素后面的兄弟节点,不包括非直接子节点
168 例子:找到所有与表单同辈的 input 元素
169
170 HTML 代码:
171
172 < form >
173 < label > Name: < / label>
174 < input name = " name " / >
175 < fieldset >
176 < label > Newsletter: < / label>
177 < input name = " newsletter " / >
178 < / fieldset>
179 < / form>
180 < input name = " none " / >
181 jQuery 代码:
182
183 $( " form ~ input " )
184 结果:
185
186 [ < input name = " none " / > ]

转载于:https://www.cnblogs.com/vs2012/archive/2011/07/08/2100626.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值