我有多个h3
,其中包含各种文字。我想通过它的文本内容选择一个元素。但是我没有从后端收到确切的文本匹配。
但我和我有部分可混合的文字。使用这个如何选择受尊重的元素。
示例html:
<h3>civil</h3>
<h3>mechanical</h3>
<h3>electrical</h3>
js:
var text = "civil engineering";
var element = $('h3').closest(":contains('"+text+"')");
console.log(element);
这里我有var text = civil engineering
使用这个我想选择h3
元素。
不仅匹配这个,还有很多。我想将文字与closest
。
答案 0 :(得分:1)
我理解正确
结合使用var text = "civil engineering";
var element = $('h3').filter(function(){
return text.indexOf($(this).text()) != -1;
});
$(document).ready(function() {
var text = "civil engineering";
var element = $('h3').filter(function() {
return text.indexOf($(this).text()) != -1;
});
console.log(element.text());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h3>civil</h3>
<h3>mechanical</h3>
<h3>electrical</h3>
答案 1 :(得分:0)
您可以使用indexOf()
功能:
var h3 = $('h3');
var str = 'civil engineering';
h3.each(function() {
if (str.toLowerCase().indexOf($(this).text()) >= 0) {
$(this).addClass('found');
}
});
包含您设置的字符串的每个h3
都会获得类.found