给定HTML:
<div id="div-a"></div>
<div id="div-b"></div>
<div id="div-c"></div>
以前创建的jQuery选择:
var $divs = $("div");
如何通过ID选择该选择中的特定div?
注意: $divs
选项尚未附加到DOM,因此我不能直接选择(例如$("#div-b")
)。
find()
选择选区的后代,因此不起作用:
$divs.find("#div-b");
has()
/ :has()
选择包含具有指定选择器的元素的元素,因此这不起作用:
$divs.has("#div-b");
答案 0 :(得分:3)
您想使用filter()
来减少设置/.
var elem = $divs.filter("#div-b");
答案 1 :(得分:3)
我认为您正在寻找filter()
:
var $subset = $divs.filter("#div-b");
答案 2 :(得分:1)
如果您只想检查已经创建的特定jQuery对象中的元素,可以使用.filter()
方法:
var $divs = $("div");
var item = $divs.filter("#div-a");
这将仅检查$ divs jQuery对象中的元素,因此请查看它们中的任何一个是否与选择器"#div-a"
匹配,并将返回一个仅包含匹配项的新jQuery对象(零或一个对象)这种情况)。