多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# XML DOM 加载函数 加载 XML 文档中的代码可以存储在一个函数中。 ## loadXMLDoc() 函数 为了使前一页中的代码易于维护(检查旧的浏览器),它应该写成一个函数: ``` function loadXMLDoc(dname) { if (window.XMLHttpRequest) { xhttp=new XMLHttpRequest(); } else { xhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xhttp.open("GET",dname,false); xhttp.send(); return xhttp.responseXML; } ``` 上面的函数可以存储在 HTML 页面的 &lt;head&gt; 部分,并从页面中的脚本调用。 > ![lamp](https://box.kancloud.cn/2015-12-12_566b901025f8f.jpg) > **上面描述的函数,用于本教程中所有 XML 文档实例!** ## loadXMLDoc() 的外部 JavaScript 为了使上述代码更容易维护,以确保在所有页面中使用相同的代码,我们把函数存储在一个外部文件中。 文件名为 "loadxmldoc.js",且在 HTML 页面中的 head 部分被加载。然后,页面中的脚本调用 loadXMLDoc() 函数。 下面的实例使用 loadXMLDoc() 函数加载 [books.xml](images/books.xml): ## 实例 ``` <html> <head> <script src="loadxmldoc.js"> </script> </head> <body> <script> xmlDoc=loadXMLDoc("books.xml"); _code goes here..... _ </script> </body> </html> ``` 如何从 XML 文件中获得数据,将在下一章中讲解。 ## loadXMLString() 函数 为了使前一页中的代码易于维护(检查旧的浏览器),它应该写成一个函数: ``` function loadXMLString(txt) { if (window.DOMParser) { parser=new DOMParser(); xmlDoc=parser.parseFromString(txt,"text/xml"); } else // Internet Explorer { xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async=false; xmlDoc.loadXML(txt); } return xmlDoc; } ``` 上面的函数可以存储在 HTML 页面的 &lt;head&gt; 部分,并从页面中的脚本调用。 > ![lamp](https://box.kancloud.cn/2015-12-12_566b901025f8f.jpg) > **上面描述的函数,用于本教程中所有 XML 字符串实例!** ## loadXMLString() 的外部 JavaScript 我们已经把 loadXMLString() 函数存储在名为 "loadxmlstring.js" 文件中。 ## 实例 ``` <html> <head> <script src="loadxmlstring.js"></script> </head> <body> <script> text="<bookstore>" text=text+"<book>"; text=text+"<title>Everyday Italian</title>"; text=text+"<author>Giada De Laurentiis</author>"; text=text+"<year>2005</year>"; text=text+"</book>"; text=text+"</bookstore>"; xmlDoc=loadXMLString(text); _code goes here..... _</script> </body> </html> ```