一看到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>