IE下JS讀取xml文件示例代碼
更新時間:2013年08月05日 17:13:49 作者:
JS讀取xml文件具體步驟為:創(chuàng)建DOM對象、加載xml文件(僅適用于IE)附示例代碼,感興趣的朋友可以參考下,希望對大家有所幫助
使用JS讀取xml文件,這里暫只考慮IE瀏覽器
step1 創(chuàng)建DOM對象
function createDom() {
var xmlDoc = null;
try { //IE
if (typeof arguments.callee.activeXString != 'string') {
var versions = [
"MSXML2.DOMDocument.6.0",
"MSXML2.DOMDocument.3.0",
"MSXML2.DOMDocument",
"Microsoft.XMLDOM"
];
var i,
len;
for (i = 0, len = versions.length; i < len; ++i) {
try {
new ActiveXObject(versions[i]);
arguments.callee.activeXString = versions[i];
break;
} catch (ex) {
// ignore
}
}
}
xmlDoc = new ActiveXObject(arguments.callee.activeXString);
} catch (ex) { // other
xmlDoc = document.implementation.createDocument("", "", null);
}
return xmlDoc;
}
IE8以前,XmlDom都是利用ActiveX對象實現的,在IE9之后,IE開始支持Level 2級DOM,(其他支持Level 2 DOM的瀏覽器包括Firefox, Opera, Chrome, and Safari等)
可以像下面一樣創(chuàng)建XML DOM對象:
var xmldom = document.implementation.createDocument(namespaceUri, root, doctype);
step2 加載xml文件
function loadXML(file) {
var dom = createDom();
if (dom == null) {
alert("load filed!");
}
try {
dom.async = false;
dom.load(file);
} catch (ex) {
alert("unsupport browser!");
}
return dom;
}
一個簡單的例子:
var xmlDom = loadXML("config.xml");
IE下,可以調用selectNodes() 和selectSingleNode()方法,利用XPath,快速定位節(jié)點
step1 創(chuàng)建DOM對象
復制代碼 代碼如下:
function createDom() {
var xmlDoc = null;
try { //IE
if (typeof arguments.callee.activeXString != 'string') {
var versions = [
"MSXML2.DOMDocument.6.0",
"MSXML2.DOMDocument.3.0",
"MSXML2.DOMDocument",
"Microsoft.XMLDOM"
];
var i,
len;
for (i = 0, len = versions.length; i < len; ++i) {
try {
new ActiveXObject(versions[i]);
arguments.callee.activeXString = versions[i];
break;
} catch (ex) {
// ignore
}
}
}
xmlDoc = new ActiveXObject(arguments.callee.activeXString);
} catch (ex) { // other
xmlDoc = document.implementation.createDocument("", "", null);
}
return xmlDoc;
}
IE8以前,XmlDom都是利用ActiveX對象實現的,在IE9之后,IE開始支持Level 2級DOM,(其他支持Level 2 DOM的瀏覽器包括Firefox, Opera, Chrome, and Safari等)
可以像下面一樣創(chuàng)建XML DOM對象:
復制代碼 代碼如下:
var xmldom = document.implementation.createDocument(namespaceUri, root, doctype);
step2 加載xml文件
復制代碼 代碼如下:
function loadXML(file) {
var dom = createDom();
if (dom == null) {
alert("load filed!");
}
try {
dom.async = false;
dom.load(file);
} catch (ex) {
alert("unsupport browser!");
}
return dom;
}
一個簡單的例子:
復制代碼 代碼如下:
var xmlDom = loadXML("config.xml");
IE下,可以調用selectNodes() 和selectSingleNode()方法,利用XPath,快速定位節(jié)點
您可能感興趣的文章:
相關文章
Add a Formatted Table to a Word Document
Add a Formatted Table to a Word Document...2007-06-06
使用?Angular?服務器端渲染?Transfer?State?Service
這篇文章主要介紹了使用?Angular?服務器端渲染?Transfer?State?Service,假設我們使用?Angular?Universal?開發(fā)一個服務器端渲染的?Angular?應用,這個應用會消費一個第三方的?Restful?API2022-06-06
JavaScript 瀏覽器對象模型BOM原理與常見用法實例分析
這篇文章主要介紹了JavaScript 瀏覽器對象模型BOM原理與常見用法,結合實例形式詳細分析了JavaScript瀏覽器對象模型BOM基本概念、原理、使用方法及操作注意事項,需要的朋友可以參考下2019-12-12

