举例说明xml查询
xml文件(greenXml .xml):
<?xml version="1.0" encoding="gb2312" ?>
- <allGreen>
- <green>
<ID>1</ID>
<X>121.55443</X>
<Y>31.18068</Y>
<NAME>紫叶花园东园</NAME>
<HSNUM>108</HSNUM>
<STREET>莲安西路</STREET>
<JIEZHEN>北蔡镇</JIEZHEN>
</green>
- <green>
<ID>2</ID>
<X>121.5067</X>
<Y>31.18833</Y>
<NAME>临沂公园</NAME>
<HSNUM>3683</HSNUM>
<STREET>东方路</STREET>
<JIEZHEN>周家渡街道</JIEZHEN>
</green>
- <green>
<ID>3</ID>
<X>121.631</X>
<Y>31.18136</Y>
<NAME>孙桥文化公园</NAME>
<HSNUM />
<STREET>孙桥路</STREET>
<JIEZHEN>张江镇</JIEZHEN>
</green>
- <green>
<ID>4</ID>
<X>121.64575</X>
<Y>31.18957</Y>
<NAME>华夏公园</NAME>
<HSNUM />
<STREET>华夏中路</STREET>
<JIEZHEN>张江镇</JIEZHEN>
</green>
- <green>
<ID>5</ID>
<X>121.58912</X>
<Y>31.33665</Y>
<NAME>永久城市花园</NAME>
<PHONE>+(86)-(21)-58622272</PHONE>
<HSNUM>259</HSNUM>
<STREET>季景路</STREET>
<JIEZHEN>高桥镇</JIEZHEN>
</green>
- <green>
<ID>6</ID>
<X>121.57306</X>
<Y>31.3467</Y>
<NAME>高桥公园</NAME>
<HSNUM />
<STREET>张杨北路</STREET>
<JIEZHEN>高桥镇</JIEZHEN>
</green>
- <green>
<ID>7</ID>
<X>121.47934</X>
<Y>31.17059</Y>
<NAME>济阳公园</NAME>
<HSNUM>600</HSNUM>
<STREET>耀华路</STREET>
<JIEZHEN>上钢新村街道</JIEZHEN>
</green>
- <green>
<ID>8</ID>
<X>121.48849</X>
<Y>31.17349</Y>
<NAME>长青公园</NAME>
<HSNUM>11</HSNUM>
<STREET>长清路</STREET>
<JIEZHEN>上钢新村街道</JIEZHEN>
</green>
- </allGreen>
js中的代码:
var greenXml = new ActiveXObject("Msxml2.DOMDocument");
greenXml.load("data/greenXml .xml");
greenXml.setProperty("SelectionLanguage","XPath");//这句是进行XPath查询的关键,一定要
查找某一对象:
var myNodes = greenXml.documentElement.selectNodes("//allGreen/green[NAME='长青公园']");
模糊查询:
var myNodes = greenXml.documentElement.selectNodes("//allGreen/green[contains(NAME,'公园')]");
多条件查询:
var myNodes = greenXml.documentElement.selectNodes("//allGreen/green[contains(NAME,'公园')][JIEZHEN='上钢新村街道']"); //各个条件用[ ]表示;
查询后查看结果:
for(var i=0;i<myNodes.length;i++){
var address=myNodes[i].selectSingleNode("STREET").text;
var num=myNodes[i].selectSingleNode("HSNUM").text;
}