每个功能都有问题......将尝试通过示例解释......
在我的代码中,有一个ID为“media-type-container-1”的DIV,其内容在运行时更改为“live”:
<div id="media-type-container-1">
<div><input type="checkbox">Media 11<span id="media-stations-id-11" class="media-stations-id">11</span></div>
<div><input type="checkbox">Media 12<span id="media-stations-id-12" class="media-stations-id">12</span></div>
</div>
如果它发生变化,可以将其缩小为:
<div id="media-type-container-1">
<div><input type="checkbox">Media 13<span id="media-stations-id-13" class="media-stations-id">13</span></div>
<div><input type="checkbox">Media 14<span id="media-stations-id-14" class="media-stations-id">14</span></div>
</div>
要获取所有“media-stations-id”的列表,我使用以下代码:
$("#add-to-filter-stations").live("click", function() {
var selectedMediaStations = new Array();
selectedMediaStations.length = 0;
$('#media-type-container-1').each(function(){
$('.media-stations-id').each(function(){
selectedMediaStations.push($(this).attr('id').replace("media-stations-id-", ""));
})
});
}
在上述示例中,array selectedMediaStations获取元素11,12,13和14,而不是仅获得13和14.
我做错了什么,所以每次使用实时函数我都不能用空数组“启动”?
答案 0 :(得分:3)
为什么不尝试像
这样的东西var selectedMediaStations = $('.media-stations-id').map(function(){
return $(this).attr('id').replace('media-stations-id-','');
});
// [13, 14]