我是JavaScript新手。對於一個給定的'id',我想查找它的一級兒童'id'值。 考慮下面的代碼片段。javascript - 獲取'id'屬性的第一級子項目
function getFirstLevelChildIds(inpId) {
var eleOut = document.getElementById('out');
console.log("NODE");
eleOut.innerHTML += '<br />NODE:'
for(var node in inpId.childNodes) {
console.log("node" + node);
console.log("nodeType" + node.nodeType);
eleOut.innerHTML += '<br />' + "node -> " + node;
}
console.log("CHILD");
eleOut.innerHTML += '<br />CHILD:'
for(var child in inpId.children) {
console.log("child -> " + child);
var eleOut = document.getElementById('out');
eleOut.innerHTML += '<br />' + "child -> " + child;
}
}
var rootID = document.getElementById("A");
getFirstLevelChildIds(rootID);
<div id="A">New York
<div id="B" >Jersey City
<div id="E">Toronto</div>
<div id="F">Boston</div>
</div>
<div id="C">Durango
<div id="G">Atlanta</div>
<div id="H">Milwaukee</div>
<div id="I">Miami</div>
</div>
<div id="D">Greenville
<div id="J">Madison</div>
<div id="K">Washington</div>
</div>
</div>
<div id="out"></div>
這裏,A的孩子是B,C,d 和B的孩子是E,F
我試圖同時使用的childNodes和孩子通話,並沒有工作,加上節點類型是不確定的
是否有人可以幫助解決這個問題,只用javascript代碼(無jQuery的)
謝謝, -SRI
document.querySelectorAll('#id> div [id]') –
你完全誤解了'for ... in'。這不像'爲... ...'。請參閱[爲什麼使用「for ... in」與數組迭代如此糟糕的主意?](http://stackoverflow.com/q/500504/1529630) – Oriol