6

我有一个包含标签元素的列表项元素。我想用选择器选择列表项元素:has()。在标签元素内有我想要匹配的文本:contains()。是否可以用一行 jQuery 来完成这两件事?如果不是,那么根据子标签元素的内容选择 li 元素的优雅方法是什么?

<li>
    <!-- I want to select this one -->
    <label>Label 1</label>
    <!-- more follows -->
</li>
4

2 回答 2

8

你想要:

$("li:has(label):contains('Label 1')")

这将选择任何<li>既具有 a<label>又包含文本的Label 1任何内容。

$("li:has(label:contains('Label 1'))")

这将选择任何<li>具有 a<label>并且该标签特别包含文本的标签Label 1。(如果 " Label 1"在 .内的任何位置<li>,第一个选择器将匹配。)

于 2013-09-09T00:37:20.347 回答
0

这应该可以解决问题:

$("li:has('label'):contains('Label 1')")
于 2013-09-09T00:36:04.650 回答