AJax技术

XML DOM加载

字号+ 作者:H5之家 来源:H5之家 2017-12-11 16:31 我要评论( )

良好的组织和易于理解,有很多如何使用HTML,CSS,JavaScript中,SQL,PHP和XML实例网站建设教程。

XML DOM加载

上一页 下一页章


在本章中,我们将学习有关XML Loading和Parsing 。 正如概述章节中提到,XML DOM是语言和平台无关。

为了描述由API提供的接口,在W3C使用一个称为接口定义语言抽象语言(IDL) 使用IDL的好处是,开发人员学习如何使用DOM与他或她最喜欢的语言,可以轻松切换到不同的语言。

它的缺点是,因为它是抽象的,该IDL不能直接通过Web开发人员使用。 由于编程语言之间的差异,他们需要有一个映射 - 或结合 - 抽象接口及其具体语言之间。 DOM已被映射到编程语言,如JavaScript,JScript中,Java和C,C ++,PLSQL,巨蟒,和Perl。

在下面的章节,所有的章节中,我们将使用JavaScript作为我们的编程语言来加载XML文件。 分析器

一个parser是用来分析的文档,我们的情况下,XML文档中,并做具体与信息东西的软件应用程序。 一些基于DOM解析器列于下表:

分析器 描述

JAXP Sun Microsystem的Java API来解析XML (JAXP)

XML4J IBM的XML解析器的Java (XML4J)

msxml 微软的XML解析器(msxml) 2.0版内置到Internet Explorer 5.5

4DOM 4DOM是Python编程语言解析器。

XML::DOM XML DOM ::是一个Perl模块来操作使用Perl的XML文档。

Xerces Apache的Xerces解析器的Java

在基于树的API,如DOM,解析器遍历XML文件,并创建相应的DOM对象。 然后你就可以遍历DOM结构来回。

加载和解析XML

虽然加载XML文档,XML内容可以有两种形式:

  • 直接作为XML文件

  • 由于XML字符串

  • 内容XML文件

    下面的例子演示了如何加载XML ( node.xml )当XML内容被接收为XML文件中使用Ajax和JavaScript的数据。 这里的Ajax功能,得到一个XML文件,并将其存储在XML DOM的内容。 一旦DOM对象创建它,然后解析。

    <!DOCTYPE html> <html> <body> <div> <b>FirstName:</b> <span></span><br> <b>LastName:</b> <span></span><br> <b>ContactNo:</b> <span></span><br> <b>Email:</b> <span></span> </div> <script> //if browser supports XMLHttpRequest if (window.XMLHttpRequest) {// Create an instance of XMLHttpRequest object. code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } // sets and sends the request for calling "node.xml" xmlhttp.open("GET","/dom/node.xml",false); xmlhttp.send(); // sets and returns the content as XML DOM xmlDoc=xmlhttp.responseXML; //parsing the DOM object document.getElementById("FirstName").innerHTML= xmlDoc.getElementsByTagName("FirstName")[0].childNodes[0].nodeValue; document.getElementById("LastName").innerHTML= xmlDoc.getElementsByTagName("LastName")[0].childNodes[0].nodeValue; document.getElementById("ContactNo").innerHTML= xmlDoc.getElementsByTagName("ContactNo")[0].childNodes[0].nodeValue; document.getElementById("Email").innerHTML= xmlDoc.getElementsByTagName("Email")[0].childNodes[0].nodeValue; </script> </body> </html>

    大部分的代码的细节都在脚本代码。

    执行

    此文件另存为loadingexample.html并在浏览器中打开它,输出下面就可以看出:

    内容XML字符串

    下面的例子演示了如何在XML内容被接收为XML文件加载使用Ajax和JavaScript XML数据。 这里的Ajax功能,得到一个XML文件,并将其存储在XML DOM的内容。 一旦DOM对象创建它,然后解析。

    <!DOCTYPE html> <html> <head> <script> // loads the xml string in a dom object function loadXMLString(t) { // for non IE browsers if (window.DOMParser) { // create an instance for xml dom object parser=new DOMParser(); xmlDoc=parser.parseFromString(t,"text/xml"); } // code for IE else { // create an instance for xml dom object xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async=false; xmlDoc.loadXML(t); } return xmlDoc; } </script> </head> <body> <script> // a variable with the string var text="<Employee>"; text=text+"<FirstName>Tanmay</FirstName>"; text=text+"<LastName>Patil</LastName>"; text=text+"<ContactNo>1234567890</ContactNo>"; text=text+"<Email>tanmaypatil@xyz.com</Email>"; text=text+"</Employee>"; // calls the loadXMLString() with "text" function and store the xml dom in a variable var xmlDoc=loadXMLString(text); //parsing the DOM object y=xmlDoc.documentElement.childNodes; for (i=0;i<y.length;i++) { document.write(y[i].childNodes[0].nodeValue); document.write("<br>"); } </script> </body> </html>

    大部分的代码的细节都在脚本代码。

    执行

    此文件另存为loadingexample.html并在浏览器中打开它,输出下面就可以看出:

    现在我们看到的XML内容是如何转换为JavaScript XML DOM,您现在可以通过使用XML DOM方法访问任何XML元素。


    上一页 下一页章

    赞助商链接


    2017 W3im.com. All Rights Reserved. Email: jacklee8902@gmail.com



     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • file:///C:/Users...这种file://开头的本地文件不能使用ajax获取

      file:///C:/Users...这种file://开头的本地文件不能使用ajax获取

      2017-12-09 13:02

    • AJAX XML 实例

      AJAX XML 实例

      2017-12-07 10:01

    • PHP 和 AJAX 请求

      PHP 和 AJAX 请求

      2017-12-06 17:00

    • 获取网页 HTML 中 Title内容的代码

      获取网页 HTML 中 Title内容的代码

      2017-12-06 13:00

    网友点评