Xpath可以对XML文件中的信息进行查找,并对XML文件树形结构进行遍历。详细语法请转:http://www.w3school.com.cn/xpath/index.asp

例子:利用在JavaScript脚本中利用Xpath对XML文件中内容进行查询,将查询结果显示到html文件中

ex1.html文件:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Xpath Basis-1</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="author" content="Wayne Ng" />
<meta name="description" content="Xpath basis1" />
<meta name="revised" content="Wayne Ng, 2016/1/26" />
</head>
<body onload = "startLoad()">
<p>所有英雄职业:</p>
<div id = "text"></div>
<script type="text/javascript" src="func1.js"></script>
</body>
</html>

ex1.xml文件:

<?xml version = "1.0" encoding = "UTF-8"?>
<!--
Date:2016/1/26
Writer:Wayne Ng
Theme:MapleStory hero briefInstruction
-->
<game>
<warrior>
<hero>
<name>英雄</name>
<weapons>剑、斧、钝器</weapons>
<skill>终极打击</skill>
</hero>
<hero>
<name>圣骑士</name>
<weapons>剑、钝器</weapons>
<skill>神圣冲击</skill>
</hero>
<hero>
<name>黑骑士</name>
<weapons>长枪、矛</weapons>
<skill>黑暗穿刺</skill>
</hero>
</warrior>
<magician>
<hero>
<name>主教</name>
<weapons>长杖、短仗</weapons>
<skill>圣光普照</skill>
</hero>
<hero>
<name>火毒法师</name>
<weapons>长杖、短仗</weapons>
<skill>末日火焰</skill>
</hero>
<hero>
<name>冰雷法师</name>
<weapons>长杖、短仗</weapons>
<skill>冰咆哮</skill>
</hero>
</magician>
<archer>
<hero>
<name>神射手</name>
<weapons>弓</weapons>
<skill>暴风箭雨</skill>
</hero>
<hero>
<name>箭神</name>
<weapons>弩</weapons>
<skill>终极扫射</skill>
</hero>
</archer>
<ranger>
<hero>
<name>侠盗</name>
<weapons>短剑、短刀</weapons>
<skill>暗杀</skill>
</hero>
<hero>
<name>隐士</name>
<weapons>拳套</weapons>
<skill>四连镖</skill>
</hero>
<hero>
<name>暗影双刀</name>
<weapons>短剑、短刀</weapons>
<skill>终极斩</skill>
</hero>
</ranger>
</game>

func1.js文件:

//载入待解析XML文件
function loadXMLDoc(name){
if(window.XMLHttpRequest){
var xhttp = new XMLHttpRequest();
}
else{
var xhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET", name , false);
xhttp.send(null);
return xhttp.responseXML;
} function startLoad(){
var xml = loadXMLDoc("ex1.xml");
var path = "//name";
var txt = "";
//利用Xpath来查找感兴趣消息
if(window.ActiveXObject){
var nodes = xml.selectNodes(path);
for(var i = 0; i < nodes.length; ++i){
txt += nodes[i].childNodes[0].nodeValue + "<br />";
}
}
else{
var nodes = xml.evaluate(path, xml, null, XPathResult.ANY_TYPE, null);
var result = nodes.iterateNext();
while(result){
txt += result.childNodes[0].nodeValue + "<br />";
result = nodes.iterateNext();
}
}
document.getElementById("text").innerHTML = txt;
}

显示效果:

aaarticlea/png;base64,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" alt="" />

      2016/1/26  By 野马菌

自学Xpath的几个例子的更多相关文章

  1. 自学HTML的几个例子

    此处不赘述HTML中不同标签的用法仅仅给出自己学习时写的一些自娱自乐的例子,具体标签用法请参考W3C(http://www.w3school.com.cn/),毕竟这个才是最靠谱的,请不要相信任何二道 ...

  2. 自学php的几个例子(包含AMP(Apache、MySQL、PHP)环境搭建链接)

    学习PHP之前需要先搭建PHP运行的环境(即服务器+PHP+数据库)来使PHP成功运行,具体环境搭建教程可参考pharen(http://www.cnblogs.com/pharen/archive/ ...

  3. 自学XSL的几个例子

    XSL 指扩展样式表语言(EXtensible Stylesheet Language).XSL用来描述XML文件的格式,类似于我们可以用CSS描述HTML的格式.具体用法请转:http://www. ...

  4. 自学xml的几个例子

    xml是一种被用来传输和存储数据的语言,下面给出一些学习xml过程一些简单的例子.具体xml语法请转:http://www.w3school.com.cn/xml/xml_intro.asp 例子1: ...

  5. 自学JavaScript的几个例子

    学习了广泛使用的浏览器脚本JavaScript和HTML的DOM模型(也是用JavaScript实现),下面给出两个自己学习时的例子,具体JavaScript语法请参考W3C相关网页(http://w ...

  6. Xpath定位元素-一个例子

    前几天在群里面解决的问题,记录下来和大家分享 需要定位这个股份制企业 方法: # 首先需要单击下拉框弹出企业性质的下拉选项:然后用过Xpath定位元素 driver.find.element_by_c ...

  7. 自学Zabbix3.3-一个简单例子 添加Hosts并应用模板

    Host 是 Zabbix 监控的基本载体,所有的监控项都是基于 host 的. 通过 Configuration->Hosts->Create Host 来创建监控设备 按提示填入 Na ...

  8. 自学Zabbix之路

    自学Zabbix之路[第一回]:初识Zabbix 1.1 自学Zabbix1.1-简介 1.2 自学Zabbix1.2-zabbix特性 1.3 自学Zabbix1.3-zabbix进程 自学Zabb ...

  9. XPath和CssSelector定位总结

    1. 介绍XPath和CssSelector 2. XPath有哪些方式 2.1 通过XPath语法 2.2 Contains关键字 2.3 Start-With 2.4 Or和And关键字 2.5 ...

随机推荐

  1. 获取windows身份认证网站页面内容

    有些网站必须登录才能获取到页面内容. 代码如下,可获取数据. var url = "https://yunda-api-test.appspot.com/int/parcel?wait=tr ...

  2. poj 3254 Corn Fields_状态压缩dp

    感谢:http://www.cnblogs.com/ka200812/archive/2011/08/11/2135607.html 让我搞懂了. #include <iostream> ...

  3. C# 中的委托和事件[转自张子扬]

    文中代码在VS2005下通过,由于VS2003(.Net Framework 1.1)不支持隐式的委托变量,所以如果在一个接受委托类型的位置直接赋予方法名,在VS2003下会报错,解决办法是显式的创建 ...

  4. BestCoder Round #3 A,B

    A.预处理出来,0(1)输出. Task schedule Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K ...

  5. Linux基本配置和管理 4 ---- Linux系统启动详解

    1 系统启动的流程 BIOS -> MBR+boot code -> 执行引导程序: GRUB -> 加载内核 -> 执行init -> 运行runlevel 2 启动详 ...

  6. 查看和清除本机DNS缓存记录

    Windows上查看和清除本机DNS缓存记录: ipconfig /displaydns  查看ipconfig /flushdns  清除 貌似Time To Live的单位是秒.

  7. HMM模型详解

    http://www.cnblogs.com/skyme/p/4651331.html

  8. C++ extern "C",C与C++的区别

    1. C++保留了一部分过程式语言的特点,因而它可以定义不属于任何类的全局变量和函数.但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重载,C++对全局函数的处理方式与C有明显的不同. 2 ...

  9. Lucene学习之CURD

    创建索引 Lucene在进行创建索引时,根据前面一篇博客,已经讲完了大体的流程,这里再简单说下: Directory directory = FSDirectory.open("/tmp/t ...

  10. Flink Program Guide (5) -- 预定义的Timestamp Extractor / Watermark Emitter (DataStream API编程指导 -- For Java)

    本文翻译自Pre-defined Timestamp Extractors / Watermark Emitter ------------------------------------------ ...