XPath 实例

  • XML示例文档

    在下面的示例中,我们将使用以下XML文档。
    "books.xml":
    <?xml version="1.0" encoding="UTF-8"?>
    <bookstore>
      <book category="cooking">
        <title lang="en">中国历史手册</title>
        <author>Giada De Laurentiis</author>
        <year>2005</year>
        <price>30.00</price>
      </book>
      <book category="children">
        <title lang="en">法语</title>
        <author>J K. Rowling</author>
        <year>2005</year>
        <price>29.99</price>
      </book>
      <book category="web">
        <title lang="en">XQuery 手册</title>
        <author>James McGovern</author>
        <author>Per Bothner</author>
        <author>Kurt Cagle</author>
        <author>James Linn</author>
        <author>Vaidyanathan Nagarajan</author>
        <year>2003</year>
        <price>49.99</price>
      </book>
      <book category="web" cover="paperback">
        <title lang="en">学习 XML</title>
        <author>Erik T. Ray</author>
        <year>2003</year>
        <price>39.95</price>
      </book>
    
    </bookstore>
    
    
  • 加载XML文档

    所有现代浏览器均支持使用 XMLHttpRequest 加载 XML 文档。
    大多数现代浏览器的代码:
    var xmlhttp=new XMLHttpRequest()
    旧的Microsoft浏览器(IE 5和6)的代码:
    var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
  • 选择节点

    不幸的是,在Internet Explorer 和其他浏览器中有多种处理 XPath 的方法。
    在我们的示例中,我们包含了适用于大多数主流浏览器的代码。
    Internet Explorer 使用 selectNodes() 方法从 XML 文档中选择节点:
    大多数现代浏览器的代码:
    xmlDoc.selectNodes(xpath);
    Firefox,Chrome,Opera 和 Safari 使用 validate() 方法从 XML 文档中选择节点:
    xmlDoc.evaluate(xpath, xmlDoc, null, XPathResult.ANY_TYPE,null);
  • 选择所有标题

    下面的示例选择所有标题节点:
    /bookstore/book/title
    尝试一下
  • 选择第一本书的标题

    下面的示例选择 bookstore 元素下的第一个书节点的标题:
    /bookstore/book[1]/title
    尝试一下
  • 选择所有价格

    以下示例从所有价格节点中选择文本:
    /bookstore/book/price[text()]
    尝试一下
  • 选择price>35的价格节点

    以下示例选择价格高于35的所有价格节点:
    /bookstore/book[price>35]/price
    尝试一下
  • 选择price>35的标题节点

    下面的示例选择价格高于35的所有标题节点:
    /bookstore/book[price>35]/title
    尝试一下