递归 .children() 搜索 id 属性
我是 jQuery 新手,熟悉 PHP 和 PHP。 CSS。我已经嵌套了动态生成的 div,我希望将其发送(id)到服务器端脚本以更新数字。我想检查 .content 类中的所有内容。只应发送带有 id 的 div 进行处理;然而我在进行递归children()检查时遇到了麻烦...这是我能做的最好的(非递归的):
$(".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'));
});
}
});
}
});
}
});
它只是alert()是所有东西的id,处于它们应该在的级别。必须有更好的方法来做到这一点......提前感谢您的任何建议。 -贾斯汀
I'm new to jQuery, familiar with PHP & CSS. I have nested, dynamically generated div's which I wish to send (the id's) to a server-side script to update numbers for. I want to check everything in the .content class. Only div's with id's should be sent for processing; however I'm having trouble making a recursive children() check...this is the best (non-recursively) I could do:
$(".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'));
});
}
});
}
});
}
});
and it just alert()'s the id's of everything at the level where they should be. There must be a better way to do this...thank you in advance for any advice.
-Justin
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试:
.content div[id]
将选择具有非空 ID 属性的 .content 的所有 div 后代(任何级别)。[id]
部分是 Has Attribute 选择器。我使用了
.map
。提取匹配项的 ID,并使用.get()
将结果对象转换为基本数组。在这里尝试一下:http://jsfiddle.net/M96yK/
Try:
.content div[id]
will select you all div descendants (at any level) of .content with non-empty ID attributes. The[id]
part is an example of the Has Attribute selector.I have used
.map
. to extract the IDs of the matches, and.get()
to convert the resulting object into a basic array.Try it here: http://jsfiddle.net/M96yK/
你可以这样做:
这将返回一个 jQuery 对象,其中包含指定了 id 的所有 div
You can do:
This will return a jQuery object that contains all div's which have id's specified