获取每个内部的 parent 和 child ID
Get parent and child ID inside for each
如何获取下面描述的代码中的每个 id and children's id for each parent, and how do I get the id and parent id for each child
?
foreach中写if {}对吗?
解决这个问题的最佳方法是什么。
var aw = document.getElementById("container").className;
if(aw == 'activ-window'){
var divs = document.getElementById("container").querySelectorAll('.activ-window *');
var elements = "";
divs.forEach(function(elem){
elements += elem.id;
if (elem.firstChild) { //is parent
"My id:" + elem.id + "My children id:" //elem.id.child??
}
if (elem.//is child) {
"My id:" + elem.id + "My parent id:" //elem.id.parent??
}
});
document.getElementById("demo").innerHTML = elements;
}
<div id="container" class="activ-window">
<div id="parent1">
<div id="child-1-1" ></div>
<div id="child-1-2" ></div>
</div>
<div id="parent2">
<div id="child-2-1" ></div>
<div id="parent3" >
<div id="child-3-1" ></div>
<div id="child-3-2" ></div>
<div id="child-3-3" ></div>
</div>
</div>
</div>
<div id="demo"></div>
首先,使用那么多 ID 是一种糟糕的做法。
其次,“querySelector”是一个 child selector。所以
var divs = document.getElementById("container").querySelectorAll('.activ-window *');
没有 select 任何东西因为#container 没有任何 child 与 class 名称 active-window.
第三,不清楚你想要实现什么类型的输出。它是 DOM 项的映射还是 id 数组等?但一般来说,最好的方法是称为递归的方法。由于这是一个复杂的概念,如果您观看此视频会更好:https://laracasts.com/series/building-alpinejs/episodes/2
如何获取下面描述的代码中的每个 id and children's id for each parent, and how do I get the id and parent id for each child
?
foreach中写if {}对吗? 解决这个问题的最佳方法是什么。
var aw = document.getElementById("container").className;
if(aw == 'activ-window'){
var divs = document.getElementById("container").querySelectorAll('.activ-window *');
var elements = "";
divs.forEach(function(elem){
elements += elem.id;
if (elem.firstChild) { //is parent
"My id:" + elem.id + "My children id:" //elem.id.child??
}
if (elem.//is child) {
"My id:" + elem.id + "My parent id:" //elem.id.parent??
}
});
document.getElementById("demo").innerHTML = elements;
}
<div id="container" class="activ-window">
<div id="parent1">
<div id="child-1-1" ></div>
<div id="child-1-2" ></div>
</div>
<div id="parent2">
<div id="child-2-1" ></div>
<div id="parent3" >
<div id="child-3-1" ></div>
<div id="child-3-2" ></div>
<div id="child-3-3" ></div>
</div>
</div>
</div>
<div id="demo"></div>
首先,使用那么多 ID 是一种糟糕的做法。
其次,“querySelector”是一个 child selector。所以
var divs = document.getElementById("container").querySelectorAll('.activ-window *');
没有 select 任何东西因为#container 没有任何 child 与 class 名称 active-window.
第三,不清楚你想要实现什么类型的输出。它是 DOM 项的映射还是 id 数组等?但一般来说,最好的方法是称为递归的方法。由于这是一个复杂的概念,如果您观看此视频会更好:https://laracasts.com/series/building-alpinejs/episodes/2