学习地址http://www.w3school.com.cn/xpath/index.asp
例子总结:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>xpath学习</title>
<script type="text/javascript" src="js/xpath.js"></script>
<script type="text/javascript">
var exploer;
//加载xml文件
function loadXMLDoc(dname){
try //Internet Explorer
{
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
exploer='ie';
}
catch (e) {
try //Firefox, Mozilla, Opera, etc.
{
xmlDoc = document.implementation.createDocument("", "", null);
exploer='firefox';
}
catch (e) {
alert(e.message)
}
}
try {
xmlDoc.async = false;
xmlDoc.load(dname);
return (xmlDoc);
}
catch (e) {
alert(e.message)
}
return (null);
}
function fnIEParse(path){
var nodes = xmlDoc.selectNodes(path);
var result = document.getElementById("result");
var str = "";
for (var i = 0; i < nodes.length; i++) {
var node = nodes[i];
str = str + node.xml;
}
result.value = str;
}
function fnFirefoxParse(path){
var oNSResolver = xmlDoc.createNSResolver(xmlDoc.documentElement);
var nodes = xmlDoc.evaluate(xpath, xmlDoc, oNSResolver, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
var result = document.getElementById("result");
var str = "";
for (var i = 0; i < nodes.length; i++) {
var node = nodes[i];
str = str + node.xml;
}
result.value = str;
}
var ibatisDoc = loadXMLDoc("Student.ibatis.xml");
var bookDoc = loadXMLDoc("books.xml");
//使用xpath函数加入该语句
bookDoc.setProperty("SelectionLanguage","XPath");
function fnSelectNodes(){
var path=document.getElementById("path").value;
if(exploer=='ie'){
fnIEParse(path);
}else if(exploer='firefox'){
fnFirefoxParse(path);
}else{
alert("由于你的浏览器不支持Javascript,path...");
}
}
window.onload = function(){
document.getElementById("bthSearch").onclick = fnSelectNodes;
};
</script>
</head>
<body>
/bookstore/book<br/>
/bookstore/book[0]<br/>
/bookstore/book/author/text()<br/>
/bookstore/book[price>35]/price<br/>
/bookstore/book[price>35]/title<br/>
/bookstore/book[1]<br/>
/bookstore/book[last()]<br/>
//title[@lang]<br/>
//title[@lang='en']<br/>
/bookstore/book/title | //price<br/>
/bookstore/book[position()<3]<br/>
<p>xpath表达式:<input type="text" id="path" size="120"/>
<input id="bthSearch" type="button" value="确定"/>
</p>
<a href="books.xml" target="_blank">books.xml</a>
<textarea id="result" cols="150" rows="20"></textarea>
</body>
</html>