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