我是jQuery的新手,熟悉PHP& CSS。我有嵌套的,动态生成的div,我想发送(id)到服务器端脚本来更新数字。我想检查.content类中的所有内容。只有带有id的div才能被发送处理;但是我在制作递归子()检查方面遇到了麻烦...这是我能做的最好的(非递归):
$(".content").children().each(function() {
if ($(this).attr('id').length == 0) {
$(this).children().each(function() {
if ($(this).attr('id').length == 0) {
$(this).children().each(function() {
if ($(this).attr('id').length == 0) {
$(this).children().each(function() {
alert($(this).attr('id'));
});
}
});
}
});
}
});
它只是提醒()是应该在的级别的所有内容的ID。必须有更好的方法来做到这一点...提前感谢您的任何建议。 -Justin
答案 0 :(得分:5)
尝试:
var ids = $('.content div[id]').map(function() {
return this.id;
}).get();
.content div[id]
将选择具有非空ID属性的.content的所有div后代(在任何级别)。 [id]
部分是Has Attribute选择器的示例。
我使用过.map
。提取匹配的ID,.get()
将结果对象转换为基本数组。
答案 1 :(得分:1)
你可以这样做:
$(".content div[id]");
这将返回一个jQuery对象,其中包含所有具有id指定的div