使用Jquery选择DOM元素并访问其中的内部元素

3

我想编写一个小脚本。我有一个主div,其中包含300个内部div,我通过以下方式访问它们:

$("#items").find(".item").each(function(index,ele){
    console.log(ele);
})

所以它记录了所有内部div的信息。 现在我想访问这些找到的div的标签并读取它们的内部html。

我该如何做?尝试过使用ele.labelele.$("label"),但都不起作用。


提供完整的代码 - Super User
我没有其他代码,只是想在现有页面上使用控制台中的页面源代码来运行该脚本。 - Jan Kowalski
5个回答

2
你需要使用.find.children来查找子级/嵌套元素。
$(ele).children('label') // takes just direct children
$(ele).find('label') // take all nested labels

你需要使用 $(ele). 而不是仅仅使用 ele. - freelancer
当我尝试这样做时,它会给我返回:ele.find不是一个函数。 - Jan Kowalski
@JanKowalski:我更新了我的回答,有一个打字错误。 - pavel
我认为这就是我在寻找的。谢谢你的帮助。 - Jan Kowalski
现在我想获取标签的 .html() 并将其发送到同一 .item div 中的字段值。你会怎么做? - Jan Kowalski
显示剩余2条评论

0

Try this and let me know if it helps

$("#items").find(".item").each((i, e) => console.log(e.innerHTML))


0

你可以直接使用 html() 方法来获取 label 的 innerHTML。

$("#items").find(".item label").each(function(index,ele){
    console.log($(ele).html())});

或者在循环之后

$("#items").find(".item").each(function(index,ele){
    console.log($(ele).find('label').html();)})

0

纯 JavaScript 怎么样?

itemslabelArr = document.querySelectorAll("#items .item label")
for (var i = 0, len = itemslabelArr.length; i < len; i++) {
console.log(itemslabelArr[i].innerHTML);
}

0
$("#items .item").each(function(index,element){
    var labelText = $('label', element).text(); // or .html()
    console.log(labelText);
})

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接