在下面的示例中,我需要1
作为结果,因为只有一个title
的文本=lorem ipsum
我尝试使用contains
,但它会计算给定条件的所有变体。
null
var str = 'lorem ipsum';
let x = $(`.title:contains("${str}")`).length;
console.log(x);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class='title'>lorem ipsum</div>
<div class='title'>lorem ipsum a</div>
<div class='title'>a lorem ipsum</div>
null
您可以在选择器的输出上使用.filter
,将其限制为具有lorem ipsum
的确切文本内容的div
。
null
var str = 'lorem ipsum';
let x = $(`.title:contains("${str}")`).filter(function() {
return $(this).text() == str;
}).length;
console.log(x);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class='title'>lorem ipsum</div>
<div class='title'>lorem ipsum a</div>
<div class='title'>a lorem ipsum</div>