所以,我有以下div <div id="selected"></div>
。我将元素<div class="item" id="someID">blah</div>
添加到#selected
。在某些时候,我运行以下内容:
var ids = [];
$('#selected').each(function(){
ids.push( $(this).attr('id') );
});
但我一无所获。在那里工作的唯一命令是$(this).html()
。没有别的办法。为什么???
答案 0 :(得分:1)
ID是唯一的,因此请勿使用.each()
您希望获得身份selected
的元素的子项,因此请使用$('#selected').children()
尝试.map()
var ids = $('#selected').children().map(function(){
return this.id;
}).get();
答案 1 :(得分:0)
你想要
var ids = [];
$('#selected div').each(function(){ //descendent selector added
ids.push( $(this).attr('id') );
});
您的代码无效,因为$('#selected')只返回一个节点,因为只有一个节点具有该ID(应该是,id应该是唯一的)