element.children
에 대한 모든 설명서를 읽었습니다 (예 : MDN). 아직 Chrome에서 제대로 작동하지 않습니다. 나는 코드의 세그먼트는 함께 일하고 있어요 :Element.children Chrome에서 작동하지 않습니다.
<html><head>
<script src="loadxmldoc.js"></script>
</head>
<body><script>
xmlDoc=loadXMLDoc("books.xml");
document.write("<table border='1'>");
var x=xmlDoc.getElementsByTagName("day");
for (var i=0;i<x.length;i++){
document.write("<td><table border='1'>");
document.write("<tr><td>" + x[i].getAttribute("id") + "</td></tr>");
var y=xmlDoc.getElementsByTagName("time");
for (var j=0;j<y.length;j++){
document.write("<tr><td><table border='1'>");
document.write("<tr><td>Location: " + y[j].getAttribute("id") + ": ");
document.write("</table></td></tr>");
}
document.write("</table></td>");
}
document.write("</table>");
</script></body></html>
문제는, getElementsByTagName
이 y.length
(16)마다 만드는 대신 3,3,3,3,1의. 나는 childNodes
을 사용했지만 텍스트 요소가 포함되었습니다. var y=x.item(i).children;
을 사용했지만 Chrome에서는 작동하지 않습니다. FF로 작동하기 때문에 Chrome에서 지원하지 않거나 머리에 뭔가 빠져있는 것 같습니다. 그러나 all documentation I've found은 Chrome과 호환되어야한다고 말합니다.
올바른 사용법은 .children
입니까? 아니면 Chrome에 문제가 있습니까?
'var y = x [i] .getElementsByTagName ("time");','document.write'는 절대로 DOM을 조작하는 올바른 방법입니다. – adeneo
@adeneo처럼,'document.write'를 사용하지 마십시오. 'document.getElementById ("container")와 같은 것을하십시오. appendChild (document.createElement ("tr"))' – sissonb
나는 [here] 코드 (http://www.w3schools.com/xml/xml_to_html)를 따라 가고있었습니다. ASP). 여하튼, 나는 나중에 고치기 전에 전자를 없애려고 노력하고있다. –