最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

原生javascript實現(xiàn)解析XML文檔與字符串

 更新時間:2016年03月01日 08:56:49   投稿:hebedich  
這篇文章主要介紹了javascript解析XML文檔和XML字符串的方法和具體的代碼解析,有需要的小伙伴可以參考下。

之前寫過一篇 《使用jquery解析XML的方法》鏈接是http://m.fzitv.net/article/54842.htm,上篇文章詳細(xì)解釋了jQuery 與字符串互相轉(zhuǎn)換的方法 ,這里著重論述javascript操作xml。

總代碼如下:

var XMLHttp = null;
if (window.XMLHttpRequest) { //現(xiàn)代瀏覽器
  XMLHttp = new XMLHttpRequest();
} else if (window.ActiveXObject) {
  XMLHttp = new ActiveXObject("Microsoft.XMLHTTP"); //IE5/IE6
}
if (XMLHttp !== null) {
  XMLHttp.onreadystatechange = function() {
    if (XMLHttp.readyState === 4) {
      if (XMLHttp.status === 200 || XMLHttp.status === 304) {
        // var XMLDom = XMLHttp.responseXML; //解析XML文檔
        var XMLDoc = XMLHttp.responseText; //解析XML字符串
        var XMLDom = (new DOMParser()).parseFromString(XMLDoc, "text/xml");
        //異步代碼寫這里
        console.log(XMLDom);
        console.log("world"); //后出現(xiàn)world
      }
    }
  };
  XMLHttp.open("get", "test1.xml", true);
  XMLHttp.send();
  //非異步代碼寫這里
  console.log("hello"); //先出現(xiàn)hello
}

第一步,創(chuàng)建XMLHTTPREQUEST:

var XMLHttp = null;
if (window.XMLHttpRequest) { //現(xiàn)代瀏覽器
  XMLHttp = new XMLHttpRequest();
} else if (window.ActiveXObject) {
  XMLHttp = new ActiveXObject("Microsoft.XMLHTTP"); //IE5/IE6
}

第二步,檢測ONREADYSTATECHANGE(非異步不需要):

if (XMLHttp !== null) {
  XMLHttp.onreadystatechange = function() {
    if (XMLHttp.readyState === 4) {
      if (XMLHttp.status === 200 || XMLHttp.status === 304) {
        //異步代碼寫這里
      }
    }
  };
  XMLHttp.open("get", "test1.xml", true);
  XMLHttp.send();
  //非異步代碼寫這里
}

第三步,解析XML文檔或字符串(異步):

XMLHttp.onreadystatechange = function() {
    if (XMLHttp.readyState === 4) {
      if (XMLHttp.status === 200 || XMLHttp.status === 304) {
        // var XMLDom = XMLHttp.responseXML; //解析XML文檔
        var XMLDoc = XMLHttp.responseText; //解析XML字符串
        var XMLDom = (new DOMParser()).parseFromString(XMLDoc, "text/xml");
        //異步代碼寫這里
        console.log(XMLDom);
      }
    }
  };
  

第四步,解析XML文檔或字符串(非異步):

if (XMLHttp !== null) {
  // XMLHttp.onreadystatechange = function() {
  //   if (XMLHttp.readyState === 4) {
  //     if (XMLHttp.status === 200 || XMLHttp.status === 304) {}
  //   }
  // };
  XMLHttp.open("get", "test1.xml", false);
  XMLHttp.send();
  //非異步代碼寫這里
  // var XMLDom = XMLHttp.responseXML; //解析XML文檔
  var XMLDoc = XMLHttp.responseText; //解析XML字符串
  var XMLDom = (new DOMParser()).parseFromString(XMLDoc, "text/xml");
  //異步代碼寫這里
  console.log(XMLDom);
}

相關(guān)文章

最新評論

峨眉山市| 凯里市| 武清区| 霍城县| 营山县| 武清区| 晋江市| 松滋市| 固安县| 辉县市| 舞钢市| 大新县| 额敏县| 邢台市| 隆化县| 岳池县| 沙坪坝区| 边坝县| 南宁市| 宁城县| 葫芦岛市| 克什克腾旗| 谷城县| 台前县| 桃江县| 铜山县| 聂荣县| 江北区| 乌海市| 泸西县| 宣威市| 应用必备| 灵台县| 霞浦县| 扶风县| 喀什市| 五大连池市| 永清县| 万安县| 德昌县| 论坛|