2016-05-26 18 views
1

I持って次のコード:アラートが0はJQuery:動的に生成されたHTMLの要素をスニペット見つける

がどのように私はjQueryの経由findme2 div要素を見つけることができます示し

var snippet = $('<div><span class="findme">text</span></div><div class="findme2"></div>'); 

alert(snippet.find('.findme2').length); 

? (例:スニペットをラップするDIVを追加)私は上記のHTMLスニペットの構造を変更することができないことを前提としてい

更新

私はjQueryの1.11.x.を使用する必要があります

答えて

3

あなたはそれ以外の場合は、要素

var snippet = $('<div><span class="findme">text</span></div><div class="findme2"></div>'); 
 

 
alert(snippet.filter('.findme2').length);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>


または要素でラップの内側に検索し、 find()

var snippet = $('<div><span class="findme">text</span></div><div class="findme2"></div>'); 
 

 
alert($('<div>', { 
 
    html: snippet 
 
}).find('.findme2').length);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
を使用 filter()を使用する必要があります

+0

Pranav、あなたのコードをコピーしました。それは働いている。もっと注意してみましょう。 – curious1

+1

@ curious1:スニペットをバージョン1.11.xxで更新しました!!!!!! –

+0

プラナフ、申し訳ありません。私を助けてくれてありがとう! – curious1

0

jQueryの1.11.x.と、これは

互換してみてください

var snippet = $('<div><span class="findme">text</span></div>').append('<div class="findme2"></div>'); 

alert(snippet.find('.findme2').length); 

Fiddle

0

代わりfind()

var snippet = $('<div><span class="findme">text</span></div><div class="findme2"></div>'); 

alert(snippet.filter('.findme2').length); 

NOTEのfilter()を使用することができます。フィルターは 検索が選択された要素の子孫を選択します選択した要素から要素のサブセットを選択します

関連する問題