jQuery:有(.something:contains())不支持?

前端之家收集整理的这篇文章主要介绍了jQuery:有(.something:contains())不支持?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
鉴于下面的 HTML,我试图使用jQuery来匹配所有具有类“foo”的跨度的列表项,并且该跨度应该包含文本“related”.
<ul> 
  <li>Some text <span class="foo">relevant</span></li> 
  <li>Some more text <span class="foo">not</span> <span class="bar">relevant</span></li> 
  <li>Even more <span class="foo">not so either</span></li> 
  <li>Blablabla <span class="foo">relevant</span> <span class="bar">blabla</span></li> 
  <li>No foo here <span class="bar">relevant</span></li> 
</ul>

请注意,还有一些带有“bar”类的跨度,并且还有“相关”的文本,不应包括在内.

我对选择器的尝试:

ul li:has(.foo:contains('relevant"))

这不起作用.下一个示例选择了一些内容,但没有考虑到列表中有多个span:

ul li:has(span:contains('relevant"))

Here is a live example that you can play with.在工作版本中,只应选择该列表的第一个和第四个元素.

解决方法

看一下这个:
$(document).ready(function(){
    $('span.foo:contains(relevant)').parents('li').each(function() {
       alert($(this).text());
    });
});

猜你在找的jQuery相关文章