zoukankan      html  css  js  c++  java
  • 解析 XML DOM

    通过微软的 XML 解析器加载 XML

    微软的 XML 解析器内建于 Internet Explorer 5 及更高版本中。

    下面的 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 文档 ("books.xml") 载入了解析器:

    xmlDoc=document.implementation.createDocument("","",null);
    xmlDoc.async="false";
    xmlDoc.load("books.xml");
    代码解释:
    • 第一行创建空的 XML 文档对象
    • 第二行关闭异步加载,这样可确保在文档完整加载之前,解析器不会继续执行脚本
    • 第三行告知解析器加载名为 "books.xml" 的文档

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

    parser=new DOMParser();
    xmlDoc=parser.parseFromString(txt,"text/xml");
    代码解释:
    • 第一行创建一个空的 XML 文档对象
    • 第二行告知解析器加载名为 txt 的字符串

    注释:Internet Explorer 使用 loadXML() 方法来解析 XML 字符串,而其他浏览器使用 DOMParser 对象。

    注释:Internet Explorer 使用 loadXML() 方法来解析 XML 字符串,而其他浏览器使用 DOMParser 对象

    XML DOM - DOMParser 对象

    解析 XML 标记来创建一个文档。

    构造函数
    new DOMParser()
    说明

    DOMParser 对象解析 XML 文本并返回一个 XML Document 对象。要使用 DOMParser,使用不带参数的构造函数来实例化它,然后调用其 parseFromString() 方法:

    var doc = (new DOMParser()).parseFromString(text)

    IE 不支持 DOMParser 对象。相反,它支持使用 Document.loadXML() 的 XML 解析。

    注意,XMLHttpRequest 对象也可以解析 XML 文档。参阅 XMLHttpRequest 的 responseXML 属性。

    DOMParser.parseFromString()

    解析 XML 标记

    语法
    parseFromString(text, contentType)

    text 参数是要解析的 XML 标记。

    contentType 是文本的内容类型。可能是 "text/xml" 、"application/xml" 或 "application/xhtml+xml" 中的一个。注意,不支持 "text/html"。

    返回值

    保存 text 解析后表示的一个 Document 对象。参阅 Document.loadXML(),了解这个方法的一个特定于 IE 的替代。

    image

    加载函数! 与解析的区别?

    <html>
    <body>
    <script type="text/javascript">
    try //Internet Explorer
      {
      xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
      }
    catch(e)
      {
      try //Firefox, Mozilla, Opera, etc.
        {
        xmlDoc=document.implementation.createDocument("","",null);
        }
      catch(e) {alert(e.message)}
      }
    try
      {
      xmlDoc.async=false;
      xmlDoc.load("/example/xdom/books.xml");
      document.write("xmlDoc is loaded, ready for use");
      }
    catch(e) {alert(e.message)}
    </script>
    </body>
    </html>

    相当于

    <html>
    <head>
    <script type="text/javascript" src="/example/xdom/loadxmldoc.js">
    </script>
    </head>

    <body>
    <script type="text/javascript">
    xmlDoc=loadXMLDoc("/example/xdom/books.xml");
    document.write("xmlDoc 已加载,可以使用。");
    </script>
    </body>
    </html>

  • 相关阅读:
    Linux Centos7(Mac) 安装Docker教程
    SpringBoot应用操作Rabbitmq(fanout广播高级操作)
    SpringBoot应用操作Rabbitmq(topic交换器高级操作)
    SpringBoot应用操作Rabbitmq(direct高级操作)
    CCF 字符串匹配(find()函数的使用)
    PKU 1204 Word Puzzles(AC自动机)
    PKU 1932 XYZZY(Floyd+Bellman||Spfa+Floyd)
    PKU 1201 Intervals(差分约束系统+Spfa)
    PKU 2352 Stars(裸一维树状数组)
    PKU 3169 Layout(差分约束系统+Bellman Ford)
  • 原文地址:https://www.cnblogs.com/yoyov5123/p/3051524.html
Copyright © 2011-2022 走看看