一看到xml 的dom 对象就联想到html的dom 对象 ,两者确实特别的相识 。
一 、 xml 的dom对象 被视为树形结构 ,通过节点进行元素的 增、删、改等操作。
1、xmlDoc -由解析器创建的 XML 文档。
2、getElementsByTagName("to")[0] - 第一个 <to> 元素。
3、childNodes[0] - <to> 元素的第一个子元素(文本节点)。
4、nodeValue - 设置或者获取节点的值(文本本身)。
5、getAttribute(“属性”) 获取属性值。
6、setAttribute("属性","属性值") 设置属性值。
7、createElement() 方法创建新的元素节点。
8、createTextNode() 方法创建新的文本节点。
9、appendChild() 方法向节点添加子节点(在最后一个子节点之后)。
10、removeChild() 方法删除指定的节点(或元素)。
eg: people.xml 文件
1、peope.xml在服务器上 想服务器请求该xml 进行操作
<?xml version="1.0"?> <people> <name>zxr</name> <age>27</age> </people>
<script type="text/javascript"> //1、加载people.xml var xmlhttp; var xmldoc; if(window.XMLHttpRequest) { xmlhttp=new XMLHttpRequest(); } else if (window.ActiveXObject) { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } else { alert("创建 xmlhttp对象异常"); } if(xmlhttp!=null) {
xmlhttp.open("GET","people.xml",false); xmlhttp.send(); xmldoc=xmlhttp.responseXML; //获取节点people的name值 var name; var nameValue; name=xmldoc.getElementsByTagName("name")[0]; nameValue=name.ChildNote.value; //修改name的值 name.ChildNote.value="zxr3"; //获取 peopel的属性id var id = xmldoc.getElementsByTagName("people")[0].getAttribute("id"); //修改 people的属性id xmldoc.getElementsByTagName("people")[0].setAttribute("id","3"); //创建节点 var new1 =xmldoc.createElement("addNewNode"); var newText=xmldoc.createTextNode("content"); new1.appendChild(newText); xmldoc.getElementsByTagName("people")[0].appendChild(new1); //删除节点 var x=xmlDoc.getElementsByTagName("people")[0]; x.removeChild(x.childNodes[0]); } </script>