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. Makefile与shell脚本区别

    http://blog.chinaunix.net/uid-20672257-id-3345593.html 在Makefile可以调用shell脚本,但是Makefile和shell脚本是不同的.本 ...

  2. Working with Strings(使用Oracle字符串)

    Working with Strings By Steven Feuerstein  Part 3 in a series of articles on understanding and using ...

  3. XSD (xml Schema Definition)

    .xsd文件是定义DataSet的XML文件,利用XML文件的结构优势容易可视化地设计DataSet,设计完它会生成相应的.cs文件,里面的内容就是对应的类型化的DataSet.你的代码里的DataA ...

  4. Angular初级入门

    1:jquery :库 -一般是封装了一些方法 -我们去调用他的这些方法分 2:angular:框架 -框架是提供了一些规则或者模式 -我们是根据这一种规则或者模式去写代码 -然后接下来就由angul ...

  5. css系列教程--color direction line-height letter-spacing

    css标签:colorcolor:用法color:指定文本的颜色color:red/#fff/unicode; direction:用法 direction:定义文本的方向.dirction:ltr/ ...

  6. SQL Server 2012 Enterprise Edition安装过程详解(包含每一步设置的含义)

    一.启动安装程序,点击“安装”选项卡,选择“全新SQL Server独立安装或向现有安装添加功能”.(首次安装数据库系统或向现有数据库系统添加功能,均选择此选项) 二.随后,安装程序进行“安装程序支持 ...

  7. 自写Date工具类

    以前写项目的时候总是在使用到了时间的转换的时候才在工具类中添加一个方法,这样很容易导致代码冗余以及转换的方法注释不清晰导致每次使用都要重新看一遍工具类.因此整理出经常使用的一些转换,用作记录,以便以后 ...

  8. Mongodb集群搭建

    搭建高可用Mongodb集群 http://www.lanceyan.com/category/tech/mongodb/page/2 再看MongoDB副本集  http://blog.itpub. ...

  9. Address already in use: JVM_Bind<null>:8080tomcat启动不了的问题

    在MyEclipse启动或者是tomcat启动的时候出现:Address already in use: JVM_Bind<null>:8080 出现该异常,这里的8080是你的端口,有可 ...

  10. c语常用算法库(1)

    1,冒泡排序 #include <iostream> using namespace std; int main(){ ]; // 一共n个数, n不超过1000. a用来保存这些数. , ...