Amr*_*ngh 1 html javascript jquery
我想获取包含特定单词的所有字符串,例如:
<div>
<div>
<span>
<h3>In Paris (Mark Bartels) worked for about 50 years.</h3>
</span>
</div>
<div>
<span>
<h3>In America (Henry Bartels) worked for about 50 years.</h3>
</span>
</div>
<div>
<span>
<h3>In Europe (Mark Bartels) worked for about 50 years.</h3>
</span>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
在上面的字符串中我必须检查"Mark",现在我想显示包含单词"Mark"的所有字符串.
我已经尝试过以下方式,但它对我没有帮助.
var elem = $('body').find(':contains(Mark)').not('script, style, link');
var a = elem.parent();
var tag = a;
console.log(tag);
$("#sentence").append(elem.text());
$("#sentence").append('<br />');
Run Code Online (Sandbox Code Playgroud)
迭代包含字符串的所有元素并附加innerText.
:not(:has(*)):选择所有没有子元素的元素(不包括文本节点)参考:contains(Mark)'):选择包含文本的所有元素 Mark:not(script):排除<script>元素// Get all the h3 elements which contains `Mark` in the innerText
// Iterate over them
$('body').find(':not(:has(*)):contains(Mark):not(script)').each(function() {
// Append to the element
console.log($(this)[0]);
$('#sentence').append($(this).text() + '<br />');
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
<div>
<span>
<h3>In Paris (Mark Bartels) worked for about 50 years.</h3>
</span>
</div>
<div>
<span>
<h3>In America (Henry Bartels) worked for about 50 years.</h3>
</span>
</div>
<div>
<span>
<h3>In Europe (Mark Bartels) worked for about 50 years.</h3>
</span>
</div>
</div>
<div id="sentence"></div>Run Code Online (Sandbox Code Playgroud)