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 array = new Array();
$('.d1 li.active, .d2 li.active').each(function(){
    array.push($(this).text())
});
于 2012-11-24T11:17:07.880 回答
1

尝试这个

var arr = new Array();

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

演示

于 2012-11-24T11:19:51.757 回答
0

d1andd2是类,所以你应该使用$('.d1,.d2'),然后你找到活动的 li,使用map返回找到的 li 的所有文本值。

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