replaceChild() 메서드는 특정 노드를 새 노드로 대체하는 데 사용된다.
replaceData() 메서드는 텍스트 노드의 데이터를 대체하는 데 사용되며, 세 개의 매개변수를 받는다.
XML DOM 노드를 대체하는 예제는 다음과 같다.
var text="<person>"; text += "<name>name1</name>"; text += "<address street='street1' city='city1'>address1</address>"; text += "<phone>phone1</phone>"; text += "</person>"; if (window.DOMParser) { parser=new DOMParser(); xmlDoc=parser.parseFromString(text,"text/xml"); } else // 인터넷 익스플로러 { xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async=false; xmlDoc.loadXML(text); } var newAddressNode = xmlDoc.createElement('address'); var textNode = xmlDoc.createTextNode('address2'); newAddressNode.appendChild(textNode); var oldAddressNode = xmlDoc.getElementsByTagName("address")[0]; xmlDoc.documentElement.replaceChild(newAddressNode, oldAddressNode); var phoneNumber = xmlDoc.getElementsByTagName("phone")[0].childNodes[0]; phoneNumber.replaceData(0, 5, '12345678'); console.log((new XMLSerializer()).serializeToString(xmlDoc));
위 코드를 실행한 결과는 다음과 같다.
<person> <name>name1</name> <address>address2</address> <phone>123456781</phone> </person>
← 이전 | 홈 | 다음 → |