XML DOM 노드 생성

예제

아래의 예제에서는 XML 파일을 사용합니다 books.xml

함수 loadXMLDoc()외부 JavaScript에 위치하고 XML 파일을 로드하는 데 사용됩니다.

요소 노드를 생성합니다
createElement()를 사용하여 새로운 요소 노드를 생성하고 appendChild()를 사용하여 그 노드를 노드에 추가합니다.
createAttribute를 사용하여 속성 노드를 생성합니다
createAttribute()를 사용하여 새로운 속성 노드를 생성하고 setAttributeNode()를 사용하여 그 노드를 요소에 삽입합니다.
setAttribute를 사용하여 속성 노드를 생성합니다
setAttribute()를 사용하여 요소에 새로운 속성을 생성합니다.
텍스트 노드를 생성합니다
이 예제에서는 createTextNode()를 사용하여 새로운 텍스트 노드를 생성하고 appendChild()를 사용하여 그 노드를 요소에 추가합니다.
CDATA 섹션 노드를 생성합니다
이 예제에서는 createCDATAsection()를 사용하여 CDATA 섹션 노드를 생성하고 appendChild()를 사용하여 그 노드를 요소에 추가합니다.
注释 노드 생성
이 예제에서는 createComment()를 사용하여 comment 노드를 생성하고 appendChild()를 사용하여 그 노드를 요소에 추가합니다.

새로운 요소 노드를 생성합니다

createElement() 메서드는 새로운 요소 노드를 생성합니다:

xmlDoc=loadXMLDoc("books.xml");
newel=xmlDoc.createElement("edition");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newel);

예제 설명:

  1. 사용하여 loadXMLDoc() "을 추가하세요books.xml" xmlDoc에 로드하세요
  2. 새로운 요소 노드 <edition>을 생성합니다
  3. 첫 번째 <book> 요소에 이 요소 노드를 추가합니다

TIY

모든 <book> 요소에 요소를 순회하며 추가합니다:TIY

새로운 속성 노드를 생성합니다

createAttribute()는 새로운 속성 노드를 생성합니다:

xmlDoc=loadXMLDoc("books.xml");
newatt=xmlDoc.createAttribute("edition");
newatt.nodeValue="first";
x=xmlDoc.getElementsByTagName("title");
x[0].setAttributeNode(newatt); 

예제 설명:

  1. 사용하여 loadXMLDoc() "을 추가하세요books.xml" xmlDoc에 로드하세요
  2. 새로운 속성 노드 "edition"를 생성합니다
  3. 첫 번째 <title> 요소에 이 새로운 속성 노드를 추가합니다

TIY

모든 <title> 요소를 순회하며 새로운 속성 노드를 추가합니다:TIY

주의사항: 속성이 이미 존재하면 새로운 속성에 의해 대체됩니다.

setAttribute()를 사용하여 속성을 생성합니다

setAttribute()는 속성이 존재하지 않는 경우 새로운 속성을 생성할 수 있으므로 이 메서드를 사용할 수 있습니다.

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName('book');
x[0].setAttribute("edition","first");

예제 설명:

  1. 사용하여 loadXMLDoc() "을 추가하세요books.xml" xmlDoc에 로드하세요
  2. 첫 번째 <book> 요소에值为 "first"의 속성을 설정(생성)합니다

TIY

모든 <title> 요소를 순회하며 새로운 속성을 추가합니다:TIY

텍스트 노드를 생성합니다

createTextNode() 메서드는 새로운 텍스트 노드를 생성합니다:

xmlDoc=loadXMLDoc("books.xml");
newel=xmlDoc.createElement("edition");
newtext=xmlDoc.createTextNode("first");
newel.appendChild(newtext);
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newel);

예제 설명:

  1. 사용하여 loadXMLDoc() "을 추가하세요books.xml" xmlDoc에 로드하세요
  2. 새로운 요소 노드 <edition>을 생성합니다
  3. 텍스트 "first"인 새로운 텍스트 노드를 생성합니다
  4. 이 요소 노드에 새로운 텍스트 노드를 추가합니다
  5. 첫 번째 <book> 요소에 새로운 요소 노드를 추가합니다

TIY

모든 <book> 요소에 텍스트 노드를 가진 요소 노드를 추가합니다:TIY

CDATA Section 노드를 생성합니다.

createCDATASection() 메서드는 새로운 CDATA section 노드를 생성합니다.

xmlDoc=loadXMLDoc("books.xml");
newCDATA=xmlDoc.createCDATASection("Special Offer & Book Sale");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newCDATA);

예제 설명:

  1. 사용하여 loadXMLDoc() "을 추가하세요books.xml" xmlDoc에 로드하세요
  2. 새로운 CDATA 섹션 노드를 생성하세요
  3. 이 새로운 CDATA 섹션 노드를 첫 번째 <book> 요소에 추가하세요

TIY

모든 <book> 요소에 하나의 CDATA 섹션을 추가하려면:TIY

注释 노드 생성

createComment() 메서드는 새로운注释 노드를 생성합니다.

xmlDoc=loadXMLDoc("books.xml");
newComment=xmlDoc.createComment("Revised March 2008");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newComment);

예제 설명:

  1. 사용하여 loadXMLDoc() "을 추가하세요books.xml" xmlDoc에 로드하세요
  2. 새로운注释 노드를 생성하세요
  3. 이 새로운注释 노드를 첫 번째 <book> 요소에 추가하세요

TIY

모든 <book> 요소에 하나의 comment 노드를 추가하려면:TIY