仅使用 jQuery 的 find() 直接后代
是否可以使用 jQuery 的 find()
或 children()
函数仅选择元素的直接后代?
我有几个 ul
元素,每个元素内部都包含其他 ul
元素,还有一些根 li
元素。我将特定的父 ul
存储在变量中(作为 jQuery 对象),然后使用以下命令查找任何根 li
元素: my_root_ul.find(' li');
。
但是,此方法还会查找 ul
内属于 ul
的任何 li
(如果有意义的话)。
我的问题是,如何使用 find()
在 my_root_ul
对象中仅选择类型 li
的直接后代。通常,我们可以使用像 $('ul > li')
这样的东西来只返回直接的 li
元素,但一定可以过滤掉返回的元素吗?
这是一个例子来证明我的意思:
<ul>
<li>I want this
<ul>
<li>I don't want this</li>
<li>I don't want this</li>
<li>I don't want this</li>
</ul>
</li>
<li>I want this</li>
<li>I want this</li>
</ul>
Is it possible to select only direct descendants of an element using jQuery's find()
or children()
functions?
I have several ul
elements, each with other ul
elements inside them, and some root li
elements too. I store a specific parent ul
in a variable (as a jQuery object) and then look for any of the root li
elements within using: my_root_ul.find('li');
.
However, this method also finds any li
that belongs to the ul
inside the ul
, if that makes sense.
My question is, how can I select only direct descendants of type li
within the my_root_ul
object using find()
. Ordinarily, we could use something like $('ul > li')
to return only direct li
elements, but it must be possible to filter down the returned elements?
Here is an example to demonstrate what I mean:
<ul>
<li>I want this
<ul>
<li>I don't want this</li>
<li>I don't want this</li>
<li>I don't want this</li>
</ul>
</li>
<li>I want this</li>
<li>I want this</li>
</ul>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
像这样:
.children()
也仅选择直接子级,因此您也可以使用它:Like this:
.children()
also selects only the immediate children, so you can use that also: