jQueryで$.find()メソッドを使用していますが、セレクター条件に一致するすべての結果を取得できません。
これは私のHTMLです
<div class="something">
<label> Hello </label>
<div class="selse">
<label> Hi </label>
<label class="imp"> This is </label>
<label class="imp"> Nooo </label>
</div>
<label class="imp"> Sparta </label>
<label class="imp"> Right ? </label>
</div>
<div class="something">
<label> Hell No </label>
<div class="selse">
<label> Hi </label>
<label class="imp"> Cant </label>
</div>
<label class="imp"> touch </label>
<label class="imp"> this </label>
<label class="imp"> MC </label>
</div>
だから私が次のJSをするとき
$("div.something").each(function(index) {
alert(index + ': ' + $(this).find("label.imp").html())
});
2つのアラートが表示されると思いました。1つはで0. This is, Nooo, Sparta, Right ?
、もう1つは1. Cant, touch, this, MC
。しかし、私はちょうど0. This is
とを手に入れました1. Cant
。
このように同じ関数で配列を使ってみました
$("div.something").each(function(index) {
var arr=[]
arr = $(this).find("label.cidForm").html();
alert(arr);
});
いいえ、「未定義」が含まれるアラートボックスが表示されます。これらの両方の場合で私は何を間違っていますか?label.imp要素内のすべての値を含む配列が必要です。
これが私が同じように立てたJSFiddleです。http://jsfiddle.net/WPeKF/1/