XML DOM removeChild() 메서드
정의와 사용법
removeChild() 메서드는 자식 노드 목록에서 특정 노드를 제거할 수 있습니다.
성공적으로 제거되면, 이 메서드는 제거된 노드를 반환하고, 실패하면 NULL을 반환합니다.
문법:
nodeObject.removeChild(node)
파라미터 | 설명 |
---|---|
node | 필수. 제거할 필요 있는 노드를 지정합니다. |
안내와 주석
주석:Internet Explorer는 노드 간에 생성된 공백 텍스트 노드(예: 줄 바꿈 기호)를 무시하지만, Mozilla는 이렇게 하지 않습니다. 따라서 아래의 예제에서는 마지막 자식 노드의 노드 유형을 확인하는 함수를 사용합니다.
요소 노드의 노드 유형은 1입니다. 따라서 첫 번째 자식 노드가 요소 노드가 아니면, 다음 노드로 이동하여 이 노드가 요소 노드인지 확인합니다. 이 과정은 첫 번째 요소 자식 노드가 발견되기까지 지속됩니다. 이 방법을 통해 Internet Explorer와 Mozilla에서 올바른 메서드를 얻을 수 있습니다.
안내:IE와 Mozilla 브라우저 간 XML DOM의 차이에 대한 더 많은 내용이 필요하시면, 우리의 웹사이트를 방문하십시오. DOM 브라우저 장절.
예제
모든 예제에서, 우리는 XML 파일을 사용할 것입니다 books.xml및 JavaScript 함수 loadXMLDoc().
아래의 코드 부분은 첫 번째 <book> 요소의 마지막 자식 노드를 제거할 수 있습니다:
// 마지막 자식 노드가 요소 노드인지 확인
function get_lastchild(n)
{
var x=n.lastChild;
while (x.nodeType!=1)
{
x=x.previousSibling;
}
return x;
}
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("book")[0];
deleted_node=;x.removeChild(get_lastchild(x));
;
document.write("Node 제거: " + deleted_node.nodeName);
출력:
Node 제거: price