XML DOM---解析xml dom

前端之家收集整理的这篇文章主要介绍了XML DOM---解析xml dom前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

大多数浏览器都内建了供读取和操作 XML 的 XML 解析器。

解析器把 XML 转换为 JavaScript 可存取的对象

解析器分两种:

一种是微软的浏览器,另一种是非微软的浏览器。

-------------微软的 XML 解析器加载 XML

JavaScript 片段把 XML 文档 ("books.xml") 载入了解析器:

xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.load("books.xml");

代码解释:

  • 第一行创建空的微软 XML 文档对象
  • 第二行关闭异步加载,这样可确保在文档完整加载之前,解析器不会继续执行脚本
  • 第三行告知解析器加载名为 "books.xml" 的文档

下面的 JavaScript 片段把名为 txt 的字符串载入解析器中:

xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.loadXML(txt);

注释:loadXML()方法用于加载字符串(文本),而load()用于加载文件

-------------在 Firefox 及其他浏览器中的 XML 解析器

javaScript 片段把 XML 文档 ("xmlDoc=document.implementation.createDocument("","",null); xmlDoc.async="false"; xmlDoc.load("books.xml");

  • 第一行创建空的 XML 文档对象
  • 第二行关闭异步加载,这样可确保在文档完整加载之前,解析器不会继续执行脚本
  • 第三行告知解析器加载名为 "books.xml" 的文档
  • parser=new DOMParser(); xmlDoc=parser.parseFromString(txt,"text/xml");

  • 第一行创建一个空的 XML 文档对象
  • 第二行告知解析器加载名为 txt 的字符串

  • 解释

    document.implementation.createDocument()
    此函数有三个参数

    document.implementation.createDocument(namespaceURI,qualifiedNameStrdocumentType)

    namespaceURI
    Is a DOMStringcontaining the namespace URIof the document to be created,or nullif the document doesn't belong to one.
    qualifiedNameStr
    Is a DOMStringcontaining the qualified name,that is an optional prefix and colon plus the local root element name,of the document to be created.
    documentType Optional
    Is the DocumentTypeof the document to be created. It defaults to null.

    DOMString:实际上,在JavaScript中,DOMString就是String。规范解释说指的是UTF-16字符串,而JavaScript正是使用了这种编码的字符串,因此,在Ajax中,DOMString就等同于JS中的普通字符串。


    参考:w3school文档

    猜你在找的XML相关文章