在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下面通用。
如果有不妥之处,请路过的您多多指教。

posted on 2008-09-01 13:15  sky100  阅读(828)  评论(1编辑  收藏  举报