我正在进行以下演示。为什么我无法在文本中找到并过滤div?
"paths": {
"rxjs": [
"./vendor/rxjs.ts"
]
}

$(".list-group-item").each(function(){
if($(this':contains("text")').contains("Map")){
$(this).append(" - One");
}
if($(this':contains("text")').contains("Tap")){
$(this).append(" - Two");
}
});

答案 0 :(得分:1)
您的语法$(this':contains("text")'
不正确,请尝试使用is,例如:
$(".list-group-item").each(function(){
if($(this).is(':contains("Map")')) {
$(this).append(" - One");
}
if($(this).is(':contains("Tap")')) {
$(this).append(" - Two");
}
});
答案 1 :(得分:0)
尝试将其更改为
$(".list-group-item").each(function(){
if($(this).text() == "Map"){
$(this).append(" - One");
}
if($(this).text() == "Tap"){
$(this).append(" - Two");
}
});
答案 2 :(得分:0)
您不需要使用$.each()
循环播放。您可以直接选择和追加。例如:
$('.list-group-item:contains("Map")').append(" - One");
$('.list-group-item:contains("Tap")').append(" - Two");

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="list-group">
<li class="list-group-item">Map</li>
<li class="list-group-item">App</li>
<li class="list-group-item">Tap</li>
<li class="list-group-item">Map</li>
<li class="list-group-item">Wap</li>
</ul>
&#13;
答案 3 :(得分:-1)
你可能错过了this
:contains
$(".list-group-item").each(function(){
if($(this + ':contains("text")').contains("Map")){
$(this).append(" - One");
}
if($(this + ':contains("text")').contains("Tap")){
$(this).append(" - Two");
}
});