0

私は小さなリストを持っています

お気に入り

<div class="d1">
<ul>
<li class="active">hello</li>
<li>foo</li>
</ul>
</div>

<div class="d2">
<ul>
<li class="active">foo</li>
<li>foo</li>
</ul>
</div>

<div class="d3">
<ul>
<li class="active">bar</li>
<li>foo</li>
</ul>
</div>

そして今、私は、この例ではサイズ2 [0]-> hello[1]->fooの配列を取得したいと思います

しかし、私はdiv d1、d2からすべての「アクティブ」マークされた値を取得したいだけです。しかし、値にアクセスする方法を見つけることができません。

私はそれが次のようなものでなければならないと思います

$('#d1,#d2 li').value

しかし、それは機能しませんでした:-/

4

4 に答える 4

3
$(".d1, .d2").find("li.active").map(function(i, e) { return $(e).text(); })
于 2012-11-24T11:21:31.637 に答える
1

これを試して

var arr = new Array();

$(".d1, .d2").find("li.active").map(function() {
    arr.push( $(this).text() ); 
});

デモ

于 2012-11-24T11:19:51.757 に答える
1

これを使って

var array = new Array();
$('.d1 li.active, .d2 li.active').each(function(){
    array.push($(this).text())
});
于 2012-11-24T11:17:07.880 に答える
0

d1d2はクラスなので、 を使用する必要があります$('.d1,.d2')。次に、アクティブな li を見つけ、 を使用mapして、見つかった li のすべてのテキスト値を返します。

var ret = $('.d1,.d2').find('li.active').map(function() {
  return $(this).text();
});
于 2012-11-24T11:26:21.847 に答える