在DOM眼中,HTML跟XML一樣是一種樹狀結構的文檔。各個節點被視為各種類型的Node物件。每個Node物件都有自己的屬性和方法,利用這些屬性和方法可以遍歷整個文件樹。 DOM定義了nodeType來表示節點的類型
#介面 |
##nodeType常數 |
nodeType值 |
|
|
|||
##1 |
元素節點 |
#######Text ##################Node.TEXT_NODE###################3########################################################### ########文字節點####### |
|
Document |
#Node.DOCUMENT_NODE |
||
#9 |
document |
||
####DocumentFragment############################################################################################################## #######Node.DOCUMENT_FRAGMENT_NODE###################11##################document片段# #######################Attr####### |
Node.ATTRIBUTE_NODE |
#2 |
節點屬性 |
DOM樹的根節點是個Document對象,有時候document即指向整個文件。
Document定義的方法大多是生產型方法,主要用於建立可以插入文件中的各種類型的節點。常用的Document方法有:
方法 |
描述 |
#createAttribute() |
以指定的名字創建新的Attr節點。 |
createComment() |
以指定的字串建立新的Comment節點。 |
createElement() |
以指定的標記名建立新的Element節點。 |
createTextNode() |
用指定的文字創建新的TextNode節點。 |
getElementById() |
傳回文件中具有指定id屬性的Element節點。 |
getElementsByTagName() |
在傳回文件中具有指定標記名的所有Element節點。 |
Element常用的方法:
#描述 |
|
getAttribute() |
以字串形式傳回指定屬性的值。 |
getAttributeNode() |
|
陣列 ,包含所有具有指定標記名的Element節點的子孫節點,其順序為在文件中出現的順序。 |
|
有Attribute() #########如果該元素具有指定名字的屬性,則傳回true。 ########################removeAttribute()###### |
從元素中刪除指定的屬性。 |
removeAttributeNode() |
從元素的屬性列表中刪除指定的Attr節點。 |
#setAttribute() |
把指定的屬性設定為指定的字串值,如果該屬性不存在則新增一個屬性。 |
#setAttributeNode() |
把指定的Attr節點新增到該元素的屬性清單中。 |
Node物件常用屬性:
#屬性 |
描述 |
#attributes |
如果該節點是一個Element,則以NamedNodeMap形式傳回該元素的屬性。 |
childNodes |
以Node[]的形式存放當前節點的子節點。如果沒有子節點,則傳回空數組。 |
firstChild |
以Node的形式傳回目前節點的第一個子節點。如果沒有子節點,則為null。 |
lastChild |
#以Node的形式傳回目前節點的最後一個子節點。如果沒有子節點,則為null。 |
nextSibling |
以Node的形式傳回目前節點的兄弟下一個節點。如果沒有這樣的節點,則傳回null。 |
nodeName |
#節點的名字,Element節點則代表Element的標記名稱。 |
nodeType |
代表節點的型別。 |
parentNode |
#以Node的形式傳回目前節點的父節點。如果沒有父節點,則為null。 |
previousSibling |
以Node的形式回傳緊挨目前節點、位於它之前的兄弟節點。如果沒有這樣的節點,則傳回null。 |
Node物件常用方法:
方法 |
方法 |
##描述 |
appendChild() |
透過把一個節點增加到目前節點的childNodes[]群組,為文件樹增加節點。 |
cloneNode() |
複製目前節點,或者複製當前節點以及它的所有子孫節點。 |
hasChildNodes() |
如果目前節點擁有子節點,則將傳回true。 |
insertBefore() |
給文件樹插入一個節點,位置在目前節點的指定子節點之前。如果該節點已經存在,則刪除之再插入到它的位置。 |
removeChild() ###############從文件樹移除並傳回指定的子節點。 ###### |
replaceChild() |
#從文件樹移除並傳回指定的子節點,用另一個節點替換它。 |
取得元素的值
下面的程式碼檢索第一個
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];txt=x.nodeValue; //其实应该先判断节点是否存在
結果:txt = "Harry Potter"
取得屬性的值
下面的程式碼檢索第一個
txt=xmlDoc.getElementsByTagName("title")[0].getAttribute("lang");
結果:txt = "en"
改變元素的值
#下面的程式碼改變第一個
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];x.nodeValue="Easy Cooking";
改變屬性的值
setAttribute() 方法可用來改變已有屬性的值,或建立一個新屬性。
下面的程式碼為每個
x=xmlDoc.getElementsByTagName("book");for(i=0;i<x.length;i++) { x[i].setAttribute("edition","first"); }
建立元素
# createElement() 方法建立新的元素節點。
createTextNode() 方法建立新的文字節點。
appendChild() 方法將子節點新增至節點(在最後一個子節點之後)。
如需建立帶有文字內容的新元素,則需要同時建立元素節點和文字節點。
下面的程式碼創建了一個元素(
newel=xmlDoc.createElement("edition");
newtext=xmlDoc.createTextNode("First");
newel.appendChild(newtext);
x=xmlDoc.getElementsByTagName("book");x[0].appendChild(newel);
範例解釋:
建立
元素 建立一個值為"First" 的文字節點
把這個文字節點追加到
元素 把
元素追加到第一個 元素
#刪除元素
removeChild() 方法刪除指定的節點(或元素)。
下面的程式碼片段將刪除第一個
x=xmlDoc.getElementsByTagName("book")[0];x.removeChild(x.childNodes[0]);
實例程式碼
<p><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #0000ff;"><</span><span style="color: #800000;">html </span><span style="color: #ff0000;">xmlns</span><span style="color: #0000ff;">="http://www.w3.org/1999/xhtml"</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/></span><span style="color: #0000ff;"><</span><span style="color: #800000;">head </span><span style="color: #ff0000;">runat</span><span style="color: #0000ff;">="server"</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/></span><span style="color: #0000ff;"><</span><span style="color: #800000;">title</span><span style="color: #0000ff;">></</span><span style="color: #800000;">title</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/></span><span style="color: #0000ff;"><</span><span style="color: #800000;">script </span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="text/<a href="http://www.php.cn/wiki/48.html" target="_blank">javascript</a>"</span><span style="color: #0000ff;">></span><span style="background-color: #f5f5f5; color: #000000;"><br/></span><span style="background-color: #f5f5f5; color: #0000ff;">function</span><span style="background-color: #f5f5f5; color: #000000;"> parseXML() {<br/></span><span style="background-color: #f5f5f5; color: #0000ff;">try</span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;">Internet Explorer</span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> {<br/> xmlDoc </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #0000ff;">new</span><span style="background-color: #f5f5f5; color: #000000;"> ActiveX<a href="http://www.php.cn/wiki/60.html" target="_blank">Object</a>(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">Microsoft.XMLDOM</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">);<br/> }<br/></span><span style="background-color: #f5f5f5; color: #0000ff;">catch</span><span style="background-color: #f5f5f5; color: #000000;"> (e) { <br/></span><span style="background-color: #f5f5f5; color: #0000ff;">try</span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;">Firefox, Mozilla, Opera, etc.</span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> {<br/> xmlDoc </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> document.implementation.createDocument(</span><span style="background-color: #f5f5f5; color: #000000;">""</span><span style="background-color: #f5f5f5; color: #000000;">, </span><span style="background-color: #f5f5f5; color: #000000;">""</span><span style="background-color: #f5f5f5; color: #000000;">, </span><span style="background-color: #f5f5f5; color: #0000ff;">null</span><span style="background-color: #f5f5f5; color: #000000;">);<br/> }<br/></span><span style="background-color: #f5f5f5; color: #0000ff;">catch</span><span style="background-color: #f5f5f5; color: #000000;"> (e) {<br/> alert(e.message);<br/></span><span style="background-color: #f5f5f5; color: #0000ff;"><a href="http://www.php.cn/wiki/135.html" target="_blank">return</a></span><span style="background-color: #f5f5f5; color: #000000;">;<br/> }<br/> }<br/> xmlDoc.async </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #0000ff;">false</span><span style="background-color: #f5f5f5; color: #000000;">; </span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;">假如xml载入完毕执行以下</span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> xmlDoc.load(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">note.xml</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">);<br/></span><span style="background-color: #f5f5f5; color: #0000ff;">var</span><span style="background-color: #f5f5f5; color: #000000;"> x </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> xmlDoc.getElementsByTagName(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">to</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">);<br/></span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;"> xmlDoc.getElementsByTagName("to")[0].setAttribute("<a href="http://www.php.cn/wiki/1255.html" target="_blank">date</a>") = "1515"; //设置属性值</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue = "tiewang"; //设置文本节点值</span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> <br/></span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;"> //<a href="http://www.php.cn/code/6276.html" target="_blank">循环</a>修改</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> for (i = 0; i < x.length; i++) {</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> if (x[i].childNodes[0] == null) { //如果不存在问题,则添加</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> newText1 = xmlDoc.createTextNode("af");</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> x[i].appendChild(newText1);</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> }</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> x[i].childNodes[0].nodeValue = "af";</span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;"> }</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> //循环添加 //注意,如果把create放在<a href="http://www.php.cn/code/5913.html" target="_blank">for循环</a>外面,则只能添加到最后一个,需要放在for里面</span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #0000ff;">for</span><span style="background-color: #f5f5f5; color: #000000;"> (i </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #000000;">0</span><span style="background-color: #f5f5f5; color: #000000;">; i </span><span style="background-color: #f5f5f5; color: #000000;"><</span><span style="background-color: #f5f5f5; color: #000000;"> x.length; i</span><span style="background-color: #f5f5f5; color: #000000;">++</span><span style="background-color: #f5f5f5; color: #000000;">) {<br/></span><span style="background-color: #f5f5f5; color: #0000ff;">if</span><span style="background-color: #f5f5f5; color: #000000;"> (x[i].getElementsByTagName(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">too</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">)[</span><span style="background-color: #f5f5f5; color: #000000;">0</span><span style="background-color: #f5f5f5; color: #000000;">] </span><span style="background-color: #f5f5f5; color: #000000;">==</span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #0000ff;">null</span><span style="background-color: #f5f5f5; color: #000000;">) {<br/> newElemenet </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> xmlDoc.createElement(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">too</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">);<br/> newText </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> xmlDoc.createTextNode(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">logo</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">);<br/> newElemenet.setAttribute(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">id</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">, </span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">1</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">);<br/> newElemenet.appendChild(newText); <br/> x[i].appendChild(newElemenet);<br/> }<br/> }<br/></span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;"> //循环删除</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> for (i = 0; i < x.length; i++) {</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> if (x[i].getElementsByTagName("too")[0] != null) {</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> x[i].removeChild(x[i].getElementsByTagName("too")[0]);</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> }</span><span style="background-color: #f5f5f5; color: #008000;"><br/>//</span><span style="background-color: #f5f5f5; color: #008000;"> }</span></p><p><span style="background-color: #f5f5f5; color: #008000;"> </span><span style="background-color: #f5f5f5; color: #008000;"> <br/></span><span style="background-color: #f5f5f5; color: #000000;"> <span style="font-family: Courier New; background-color: #f5f5f5;"> </span></span></p><p><span style="background-color: #f5f5f5; color: #000000;"><span style="font-family: Courier New; background-color: #f5f5f5;"> //删除to -> too 节点中的ID属性<br/> for (i = 0; i < x.length; i++) {<br/> if (x[i].getElementsByTagName("too")[0] != null) {<br/> if (x[i].getElementsByTagName("too")[0].getAttribute("id")!=null) {<br/> x[i].getElementsByTagName("too")[0].removeAttribute("id");<br/> }<br/> }<br/> }</span><br/></span><span style="background-color: #f5f5f5; color: #0000ff;">var</span><span style="background-color: #f5f5f5; color: #000000;"> xmlHttp;<br/><br/></span><span style="background-color: #f5f5f5; color: #0000ff;">try</span><span style="background-color: #f5f5f5; color: #000000;"> {<br/></span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;"> Firefox, Opera 8.0+, Safari</span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> xmlHttp </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #0000ff;">new</span><span style="background-color: #f5f5f5; color: #000000;"> XMLHttpRequest();<br/> }<br/></span><span style="background-color: #f5f5f5; color: #0000ff;">catch</span><span style="background-color: #f5f5f5; color: #000000;"> (e) {<br/><br/></span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;"> Internet Explorer</span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #0000ff;">try</span><span style="background-color: #f5f5f5; color: #000000;"> {<br/> xmlHttp </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #0000ff;">new</span><span style="background-color: #f5f5f5; color: #000000;"> ActiveXObject(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">Msxml2.XMLHTTP</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">);<br/> }<br/></span><span style="background-color: #f5f5f5; color: #0000ff;">catch</span><span style="background-color: #f5f5f5; color: #000000;"> (e) {<br/><br/></span><span style="background-color: #f5f5f5; color: #0000ff;">try</span><span style="background-color: #f5f5f5; color: #000000;"> {<br/> xmlHttp </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #0000ff;">new</span><span style="background-color: #f5f5f5; color: #000000;"> ActiveXObject(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">Microsoft.XMLHTTP</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">);<br/> }<br/></span><span style="background-color: #f5f5f5; color: #0000ff;">catch</span><span style="background-color: #f5f5f5; color: #000000;"> (e) {<br/> alert(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">您的浏览器不支持AJAX!</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">);<br/></span><span style="background-color: #f5f5f5; color: #0000ff;">return</span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #0000ff;">false</span><span style="background-color: #f5f5f5; color: #000000;">;<br/> }<br/> }<br/> }<br/> xmlHttp.onreadystatechange </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #0000ff;">function</span><span style="background-color: #f5f5f5; color: #000000;">() { </span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;">onreadystatechange 属性存有处理服务器响应的<a href="http://www.php.cn/wiki/145.html" target="_blank">函数</a></span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #0000ff;">if</span><span style="background-color: #f5f5f5; color: #000000;"> (xmlHttp.readyState </span><span style="background-color: #f5f5f5; color: #000000;">==</span><span style="background-color: #f5f5f5; color: #000000;"> </span><span style="background-color: #f5f5f5; color: #000000;">4</span><span style="background-color: #f5f5f5; color: #000000;">) { </span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;">readyState 属性存有服务器响应的<a href="http://www.php.cn/code/8243.html" target="_blank">状态</a>信息</span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> document.getElementById(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">to</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">).innerHTML </span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;"> xmlHttp.responseText; </span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;">通过 responseText 属性来取回由服务器返回的数据</span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> }<br/> }<br/> xmlHttp.open(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">POST</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">, </span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">receive.<a href="http://www.php.cn/wiki/1519.html" target="_blank">asp</a>x?type=xmlsave</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">, </span><span style="background-color: #f5f5f5; color: #0000ff;">true</span><span style="background-color: #f5f5f5; color: #000000;">); <br/><br/></span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;"> open() 方法需要三个参数。第一个参数定义发送请求所使用的方法(GET 还是 POST)。第二个参数规定服务器端脚本的 URL。第三个参数规定应当对请求进行异步地处理。</span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> xmlHttp.send(xmlDoc); </span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;">send() 方法可将请求送往服务器 </span><span style="background-color: #f5f5f5; color: #008000;"><br/></span><span style="background-color: #f5f5f5; color: #000000;"> }<br/></span><span style="color: #0000ff;"></</span><span style="color: #800000;">script</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/></span><span style="color: #0000ff;"></</span><span style="color: #800000;">head</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/></span><span style="color: #0000ff;"><</span><span style="color: #800000;">body </span><span style="color: #ff0000;"><a href="http://www.php.cn/wiki/1467.html" target="_blank">onload</a></span><span style="color: #0000ff;">="parseXML()"</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/></span><span style="color: #0000ff;"><</span><span style="color: #800000;">form </span><span style="color: #ff0000;">id</span><span style="color: #0000ff;">="form1"</span><span style="color: #ff0000;"> runat</span><span style="color: #0000ff;">="server"</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/></span><span style="color: #0000ff;"><</span><span style="color: #800000;">p</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/></span><span style="color: #0000ff;"><</span><span style="color: #800000;">h1 </span><span style="color: #ff0000;">id </span><span style="color: #0000ff;">= "to"</span><span style="color: #0000ff;">></</span><span style="color: #800000;">h1</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/></span><span style="color: #0000ff;"><</span><span style="color: #800000;">h1 </span><span style="color: #ff0000;">id </span><span style="color: #0000ff;">="value"</span><span style="color: #0000ff;">></</span><span style="color: #800000;">h1</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/><br/><br/></span><span style="color: #0000ff;"></</span><span style="color: #800000;">p</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/></span><span style="color: #0000ff;"></</span><span style="color: #800000;">form</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/></span><span style="color: #0000ff;"></</span><span style="color: #800000;">body</span><span style="color: #0000ff;">></span><span style="color: #000000;"><br/></span><span style="color: #0000ff;"></</span><span style="color: #800000;">html</span><span style="color: #0000ff;">></span></p>
以上是XML學習(二)詳解DOM操作XML文檔的詳細內容。更多資訊請關注PHP中文網其他相關文章!

JSONFeed是一種基於JSON的RSS替代方案,其優勢在於簡潔性和易用性。 1)JSONFeed使用JSON格式,易於生成和解析。 2)它支持動態生成,適用於現代Web開發。 3)使用JSONFeed可以提升內容管理效率和用戶體驗。

如何構建、驗證和發布RSSfeeds? 1.構建:使用Python腳本生成RSSfeed,包含標題、鏈接、描述和發布日期。 2.驗證:使用FeedValidator.org或Python腳本檢查RSSfeed是否符合RSS2.0標準。 3.發布:將RSS文件上傳到服務器,或使用Flask動態生成並發布RSSfeed。通過這些步驟,你可以有效管理和分享內容。

確保XML/RSSfeeds安全性的方法包括:1.數據驗證,2.加密傳輸,3.訪問控制,4.日誌和監控。這些措施通過網絡安全協議、數據加密算法和訪問控制機制來保護數據的完整性和機密性。

XML是一種標記語言,用於存儲和傳輸數據,RSS是一種基於XML的格式,用於發布頻繁更新的內容。 1)XML通過標籤和屬性描述數據結構,2)RSS定義特定標籤發布和訂閱內容,3)使用Python的xml.etree.ElementTree模塊可以創建和解析XML,4)XPath表達式可查詢XML節點,5)feedparser庫可解析RSSfeed,6)常見錯誤包括標籤不匹配和編碼問題,可用xmllint驗證,7)使用SAX解析器處理大型XML文件可優化性能。

XML是一種用於數據存儲和交換的標記語言,RSS是基於XML的格式,用於發布更新內容。 1.XML定義數據結構,適合數據交換和存儲。 2.RSS用於內容訂閱,解析時使用專門庫。 3.解析XML可使用DOM或SAX,生成XML和RSS需正確設置元素和屬性。

使用Python可以從XML/RSS轉換到JSON。 1)解析源數據,2)提取字段,3)轉換為JSON,4)輸出JSON。使用xml.etree.ElementTree和feedparser庫解析XML/RSS,使用json庫生成JSON數據。

XML/RSS和RESTAPI在現代網絡開發中協同工作,通過以下方式:1)XML/RSS用於內容髮布和訂閱,2)RESTAPI用於設計和操作網絡服務。結合使用這兩者可以實現高效的內容管理和動態更新。

在 XML 中加入圖片路徑需要使用 <image> 元素,其語法為 <image src="image_path" />,其中 src 屬性指定圖像文件的路徑。路徑可以是相對路徑或絕對路徑,且圖像文件必須與 XML 文件同目錄或指定完整路徑。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

記事本++7.3.1
好用且免費的程式碼編輯器

Dreamweaver CS6
視覺化網頁開發工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

SublimeText3漢化版
中文版,非常好用