2016-11-04 11 views
-1

私はループを使ってhtmlクラスを実行しようとしていますが、それぞれのif文を実行していますが、コードが機能していません。htmlクラスをループし、それぞれが動作していないif文を実行しますか? Jquery

$('.product-name').each(function() { 
    if($(this).innerHTML.indexOf("Handles") != -1){ 
     alert('test'); 
    } 
}); 
+0

HTMLを使用してみてください()の代わりのinnerHTMLプロパティ –

+0

はそれを試してみましたが、それは働いていない構文が右に見えることを行い、私はコンソールでエラーなしに届かない意味。 – Jake

+0

は私によく見えます。実際にループしていることを確認するために、各関数内に何かを記録してみてください –

答えて

0

ジョナスさんのようにhtml()でもうまく見えます。 それぞれの内部にconsole.log($(this).html())を試してください

0

これは機能します。以下のスニペットを参照してください。
実際のコードに入力ミスが含まれている可能性がありますので、ご確認ください。

$('.product-name').each(function() { 
 
    if ($(this).html().indexOf("Handles") != -1) { 
 
    console.log('Text "Handles" found for id=' + this.id); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="div1" class="product-name">Bla</div> 
 
<div id="div2" class="product-name">It Handles It</div> 
 
<div id="div3" class="product-name">Bla</div> 
 
<div id="div4" class="product-name">It Handles More</div>

関連する問題