我有一个包含标签元素的列表项元素。我想用选择器选择列表项元素:has()
。在标签元素内有我想要匹配的文本:contains()
。是否可以用一行 jQuery 来完成这两件事?如果不是,那么根据子标签元素的内容选择 li 元素的优雅方法是什么?
<li>
<!-- I want to select this one -->
<label>Label 1</label>
<!-- more follows -->
</li>
我有一个包含标签元素的列表项元素。我想用选择器选择列表项元素:has()
。在标签元素内有我想要匹配的文本:contains()
。是否可以用一行 jQuery 来完成这两件事?如果不是,那么根据子标签元素的内容选择 li 元素的优雅方法是什么?
<li>
<!-- I want to select this one -->
<label>Label 1</label>
<!-- more follows -->
</li>
你想要:
$("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>
,第一个选择器将匹配。)
这应该可以解决问题:
$("li:has('label'):contains('Label 1')")