在IE浏览器下用javascript解析XML的三种方法
我自己在学习的过程中才知道,在用javascript实现对xml的解析的时候,在不同的浏览器下面,有不同的方法。下面是在IE下面的解析方法,我说的三种,仅仅是我对于其做的一总结,希望能对正在学习ajax的您有所帮助。
从服务器取得的XML结果:
<?xml version="1.0" encoding="UTF-8" ?>
<citys>
<city>shanghai</city>
<city>tianjin</city>
<city>chengdu</city>
<city>chongqing</city>
<city>hainan</city>
</citys>
解析方法(一)
var doc = response.responseXML;
//alert(doc);
var root = doc.documentElement;
alert(root.text);
var cities = root.childNodes;
alert(cities.length);
for(var i=0;i<cities.length;i++){
var city = cities[i];
alert(city.text);
}
解析方法(二):
var cities = doc.selectNodes("/citys/city");
alert(cities.length);
for(var i=0;i<cities.length;i++){
var city = cities[i];
alert(city.text);
}
解析方法(三):
var doc = response.responseXML;
var cs = doc.getElementsByTagName("city");
alert(cs.length);
for(var i=0;i<cs.length;i++){
vara = cs[i];
//alert(a);
//alert(a.nodeName);
//alert(a.nodeValue);
var b = a.childNodes;
//alert(b);
var c=b[0];
alert(c.nodeValue);
}
只有第三种方法,可以在IE和Firefox下面通用。
如果有不妥之处,请路过的您多多指教。