zhyiwww
          用平實的筆,記錄編程路上的點點滴滴………
          posts - 536,comments - 394,trackbacks - 0
          <2008年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          -------------------------------------------
          崇尚原創(chuàng)精神,
          文章歡迎轉(zhuǎn)載,
          請您注明出處,
          在此特別聲明。
          版權(quán)所有@zhyiwww
          引用鏈接
          http://www.aygfsteel.com/zhyiwww

          --------------------------------------------

          常用鏈接

          留言簿(33)

          隨筆分類(626)

          朋友的博客

          最新隨筆

          搜索

          •  

          積分與排名

          • 積分 - 1557728
          • 排名 - 11

          最新評論

          閱讀排行榜

          評論排行榜

          我自己在學(xué)習(xí)的過程中才知道,在用javascript實現(xiàn)對xml的解析的時候,在不同的瀏覽器下面,有不同的方法。下面是在IE下面的解析方法,我說的三種,僅僅是我對于其做的一總結(jié),希望能對正在學(xué)習(xí)ajax的您有所幫助。

          從服務(wù)器取得的XML結(jié)果:
          ? <?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下面通用。
          如果有不妥之處,請路過的您多多指教。

          本例子源碼下載





          |----------------------------------------------------------------------------------------|
                                     版權(quán)聲明  版權(quán)所有 @zhyiwww
                      引用請注明來源 http://www.aygfsteel.com/zhyiwww   
          |----------------------------------------------------------------------------------------|
          posted on 2008-06-02 17:49 zhyiwww 閱讀(2585) 評論(1)  編輯  收藏 所屬分類: javascriptajax

          FeedBack:
          # re: 在IE瀏覽器下用javascript解析XML的三種方法
          2013-08-21 17:21 | 劉寧芯
          請問response是什么對象,直接使用你的代碼,會包response undefined的錯誤
            回復(fù)  更多評論
            
          主站蜘蛛池模板: 甘德县| 连城县| 万荣县| 汝州市| 滕州市| 沈阳市| 雅安市| 伊春市| 保靖县| 定兴县| 奉新县| 云安县| 安龙县| 乌拉特后旗| 巍山| 武陟县| 临桂县| 渝中区| 白水县| 蓝田县| 思南县| 上蔡县| 弋阳县| 五台县| 县级市| 云梦县| 玉环县| 昌平区| 岳池县| 宜丰县| 石嘴山市| 宁强县| 张家港市| 类乌齐县| 如东县| 永兴县| 龙里县| 化隆| 上虞市| 罗源县| 芒康县|