在打开这个帖子之前,我在这个晚上搜索了这个查询但没有成功。它似乎是JQuery的基本和常见用法:
#IMGs
)<DIV id="content"></DIV>
内容的表格)
问题是我想要IMGs#IDs
(新)收费的列表(或数组)。
当我尝试:
var imgIDs = $('#content').find('img').map(function(){
return this.id;
}).get();
alert (imgIDs.length);
警报总是给我0
!它是空的。
我该怎么办?
答案 0 :(得分:1)
您的说明听起来好像您正在使用.live
,因为您不知道#content
内的内容何时加载。这也是您提供的代码示例的问题。您应该从加载的success
(或者complete
)处理程序运行它。例如。如果您使用以下内容填充#content
div:
$('#content').load('/mydata');
然后在填充后尝试执行此功能:
$('#content').load('/mydata', function() {
var imgIDs = $('#content').find('img').map(function(){
return this.id;
}).get();
alert(imgIDs.length);
});
有关此示例的工作原理,请参阅jQuery load documentation。
如果你给js小提琴或链接演示“真正的”问题,这会帮助我更加确定你所要求的。