通過(guò)微軟的 XML 解析器來(lái)加載 XML
微軟的 XML 解析器內(nèi)建于 Internet Explorer 5 以及更高的版本中。
下面的 JavaScript 片段把一個(gè) XML 文檔載入解析器中:
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async="false"; xmlDoc.load("note.xml");
例子解釋?zhuān)?/h3>
- 上面代碼的第一個(gè)行創(chuàng)建一個(gè)空的微軟 XML 文檔對(duì)象。
- 第二行關(guān)閉異步加載,這樣確保在文檔完全加載之前解析器不會(huì)繼續(xù)腳本的執(zhí)行。
- 第三行告知解析器加載名為 "note.xml" 的 XML 文檔。
下面的 JavaScript 片段把字符串 txt 載入解析器:
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async="false"; xmlDoc.loadXML(txt);
注釋?zhuān)?/span>loadXML() 方法用于加載字符串(文本),load() 用于加載文件。
在 Firefox 及其他瀏覽器中的 XML 解析器
下面的 JavaScript 片段把 XML 文檔 ("note.xml") 載入解析器:
var xmlDoc=document.implementation.createDocument("","",null); xmlDoc.async="false"; xmlDoc.load("note.xml");
例子解釋?zhuān)?/h3>
- 上面代碼的第一個(gè)行創(chuàng)建一個(gè)空的 XML 文檔對(duì)象。
- 第二行關(guān)閉異步加載,這樣確保在文檔完全加載之前解析器不會(huì)繼續(xù)腳本的執(zhí)行。
- 第三行告知解析器加載名為 "note.xml" 的 XML 文檔。
下面的 JavaScript 片段把字符串 txt 載入解析器:
var parser=new DOMParser(); var doc=parser.parseFromString(txt,"text/xml");
例子解釋?zhuān)?/h3>
- 上面代碼的第一個(gè)行創(chuàng)建一個(gè)空的微軟 XML 文檔對(duì)象。
- 第二行告知解析器載入名為 txt 的字符串。
注釋?zhuān)?/span>Internet Explorer 使用 loadXML() 方法來(lái)解析 XML 字符串,而其他瀏覽器使用 DOMParser 對(duì)象
xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue
- xmlDoc -由解析器創(chuàng)建的 XML 文檔
- getElementsByTagName("to")[0] - 第一個(gè) <to> 元素
- childNodes[0] - <to> 元素的第一個(gè)子元素(文本節(jié)點(diǎn))
- nodeValue - 節(jié)點(diǎn)的值(文本本身)