일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- github
- system
- web
- XML
- control
- architecture
- MIPS
- CSS
- DS
- while
- mysql
- Java
- Algorithm
- instruction
- Pipelining
- DB
- Linux
- javascript
- data structure
- react
- DATAPATH
- DoM
- php
- MacOS
- Class
- function
- for
- html
- computer
- python
- Today
- Total
YYYEJI
[JavaScript] childNodes 속성 본문
↓↓↓ DOM 개념 알아보기 ↓↓↓
https://yyyeji.tistory.com/160
childNodes는
현재 요소의 자식 노드가 포함된 NodeList를 반환합니다.
NodeList가 반환될 때 요소 노드뿐만 아니라 주석 노드도 같이 반환합니다.
W3School에 나오는 Books.xml을 살펴보겠습니다.
<bookstore>
<book category="cooking">
<title lang ="en"> Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="children">
<title lang = 'en'> Harry Potter </title>
<author>J K.Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="web">
<title lang = 'en'> XQuery Kick Start </title>
<author>James McGovern</author>
<author>Per Bothner</author>
<author>Kurt Cagle</author>
<author>James Linn</author>
<year>2003</year>
<price>49.99</price>
</book>
<book category="web" cover="paperback">
<title lang = 'en'> Learning XML </title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
↑↑↑ Books.xml ↑↑↑
function myFunction(xml) {
var xmlDoc = xml.responseXML;
document.getElementById("demo").innerHTML =
xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
}
↑↑↑ h.html ↑↑↑
Function의 xmlDoc.getElementByTagname("title")[0].childNodes[0].nodeValue; 을 살펴보겠습니다.
xmlDoc.getElementByTagname("title")[0].childNodes[0].nodeValue;
→ Tag의 이름이 title인 node를 List로 반환합니다.
xmlDoc.getElementByTagname("title")[0].childNodes[0].nodeValue;
→ Tag의 이름이 title인 node의 child node 0번째를 반환합니다.
→ childNodes[1]을 반환하면 아무것도 나오지 않습니다.
→ 이유는 Title element의 childNodes[1]는 존재하지 않기 때문입니다.
xmlDoc.getElementByTagname("title")[0].childNodes[0].nodeValue;
→ Tag의 이름이 title인 node의 value를 반환합니다.
결과는 어떻게 될까요 ? ? ?
→ title인 node의 value인 Everyday Italian를 반환하게 됩니다.
xmlDoc.getElementByTagname("title")[0].childNodes[0].nodeValue;
xmlDoc.getElementByTagname("title")[1].childNodes[0].nodeValue;
xmlDoc.getElementsByTagName("title")[2].childNodes[0].nodeValue;
xmlDoc.getElementsByTagName("title")[3].childNodes[0].nodeValue;
◡̈
'HTML(or XML) & CSS & JavaScript' 카테고리의 다른 글
[JavaScript] nodeType이란 (0) | 2022.11.05 |
---|---|
[JavaScript] 문자열 합치기 (0) | 2022.11.05 |
[JavaScript] Form의 value 값 출력하기 (0) | 2022.10.25 |
[JavaScript] Class name을 통해 element 찾는 방법 (0) | 2022.10.25 |
[JavaScript] Tag name을 통해 element 찾는 방법 (0) | 2022.10.25 |