XML DOM 노드 값 가져오기
nodeValue 속성은 노드의 텍스트 값을 가져옵니다。
getAttribute() 메서드는 속성 값을 반환합니다。
예제
아래의 예제는 XML 파일을 사용합니다: books.xml。
함수 loadXMLDoc()외부 JavaScript에 위치하고 있으며, XML 파일을 로드하는 데 사용됩니다。
- 요소 값을 가져오기
- 이 예제에서는 getElementsByTagname()을 사용하여 "books.xml"에서 첫 번째 <title> 요소를 가져옵니다。
- 속성 값을 가져오기
- 이 예제에서는 getAttribute() 메서드를 사용하여 "books.xml"에서 첫 번째 <title> 요소의 "lang" 속성 값을 가져옵니다。
요소 값을 가져오기
DOM에서 각 요소는 노드입니다. 요소 노드는 텍스트 값을 가지지 않습니다。
요소 노드의 텍스트는 자식 노드에 저장됩니다. 이 노드는 텍스트 노드라고 합니다。
요소 텍스트를 가져오는 방법은 이 자식 노드(텍스트 노드)의 값을 가져오는 것입니다。
요소 값을 가져오기
getElementsByTagName() 메서드는 지정된 태그 이름을 가진 모든 요소의 노드 목록을 반환하며, 이 요소들은 원본 문서에서 등장하는 순서대로 정렬됩니다。
아래의 코드는 다음과 같이 사용됩니다: loadXMLDoc() "books.xml" xmlDoc에 로드하고 첫 번째 <title> 요소를 검색합니다:
xmlDoc=loadXMLDoc("books.xml"); x = xmlDoc.getElementsByTagName("title")[0];
childNodes 속성은 자식 노드 목록을 반환합니다.<title> 요소는 하나의 자식 노드만 가지고 있으며, 이는 텍스트 노드입니다。
아래의 코드는 <title> 요소의 텍스트 노드를 검색합니다:
x = xmlDoc.getElementsByTagName("title")[0]; y = x.childNodes[0];
nodeValue 속성은 텍스트 노드의 텍스트 값을 반환합니다:
x = xmlDoc.getElementsByTagName("title")[0]; y = x.childNodes[0]; txt = y.nodeValue;
결과: txt = "Harry Potter"
모든 <title> 요소를 순회합니다:TIY
속성 값을 가져오기
DOM에서 속성도 노드입니다. 요소 노드와 달리 속성 노드는 텍스트 값을 가집니다。
속성 값을 가져오는 방법은 그 텍스트 값을 가져오는 것입니다。
getAttribute() 메서드를 사용하거나 속성 노드의 nodeValue 속성을 사용하여 이 작업을 수행할 수 있습니다。
속성 값을 가져오기 - getAttribute()
getAttribute() 메서드는 속성 값을 반환합니다。
아래의 코드는 첫 번째 <title> 요소의 "lang" 속성의 텍스트 값을 검색합니다:
xmlDoc=loadXMLDoc("books.xml"); txt=xmlDoc.getElementsByTagName("title")[0].getAttribute("lang");
결과: txt = "en"
예제 설명:
- 사용하여 loadXMLDoc() "books.xml" xmlDoc에 로드합니다
- txt 변수를 첫 번째 title 요소의 "lang" 속성의 값을 설정합니다
모든 <book> 요소를 루프하고 그들의 "category" 속성을 가져옵니다:TIY
속성 값을 가져오기 - getAttributeNode()
getAttributeNode() 메서드는 속성 노드를 반환합니다.
아래 코드는 첫 번째 <title> 요소의 "lang" 속성의 텍스트 값을 검색합니다:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].getAttributeNode("lang"); txt=x.nodeValue;
결과: txt = "en"
예제 설명:
- 사용하여 loadXMLDoc() "books.xml" xmlDoc에 로드합니다
- 첫 번째 <title> 요소 노드의 "lang" 속성 노드를 가져옵니다
- txt 변수를 속성 값으로 설정합니다
모든 <book> 요소를 루프하고 그들의 "category" 속성을 가져옵니다:TIY