关于XML文档的基本操作的实例代码分享
更新时间:2023-11-07XML文档基本操作实例
1. 创建XML文档
以下是一个简单的XML文档示例:
<?xml version="1.0" encoding="UTF-8"?>张三 20 李四 21
2. 解析XML文档
使用XML DOM来解析XML文档:
var xmlDoc=loadXMLDoc("example.xml"); var persons=xmlDoc.getElementsByTagName("person"); for (var i=0; i < persons.length; i++) { var id=persons[i].getAttribute("id"); var name=persons[i].getElementsByTagName("name")[0].childNodes[0].nodeValue; var age=persons[i].getElementsByTagName("age")[0].childNodes[0].nodeValue; console.log("id:" + id + ", name:" + name + ", age:" + age); } function loadXMLDoc(filename) { if (window.XMLHttpRequest) { xhttp=new XMLHttpRequest(); } else { xhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xhttp.open("GET", filename, false); xhttp.send(); return xhttp.responseXML; }
3. 修改XML文档
使用XML DOM来修改XML文档:
var xmlDoc=loadXMLDoc("example.xml"); var persons=xmlDoc.getElementsByTagName("person"); for (var i=0; i < persons.length; i++) { var age=persons[i].getElementsByTagName("age")[0]; var newAge=xmlDoc.createElement("newAge"); newAge.innerHTML=parseInt(age.childNodes[0].nodeValue) + 1; persons[i].replaceChild(newAge, age); } function loadXMLDoc(filename) { if (window.XMLHttpRequest) { xhttp=new XMLHttpRequest(); } else { xhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xhttp.open("GET", filename, false); xhttp.send(); return xhttp.responseXML; }
4. 创建新节点
使用XML DOM来创建新节点,并添加到XML文档中:
var xmlDoc=loadXMLDoc("example.xml"); var root=xmlDoc.getElementsByTagName("root")[0]; var newPerson=xmlDoc.createElement("person"); newPerson.setAttribute("id", "3"); var newName=xmlDoc.createElement("name"); newName.innerHTML="王五"; var newAge=xmlDoc.createElement("age"); newAge.innerHTML="22"; newPerson.appendChild(newName); newPerson.appendChild(newAge); root.appendChild(newPerson); function loadXMLDoc(filename) { if (window.XMLHttpRequest) { xhttp=new XMLHttpRequest(); } else { xhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xhttp.open("GET", filename, false); xhttp.send(); return xhttp.responseXML; }
以上是XML文档基本操作的实例代码分享,我们可以通过XML DOM来读取、修改、创建XML文档。