Javascript(AJAX)解析XML的代碼(相容FIREFOX/IE)_javascript技巧

來源:互聯網
上載者:User
複製代碼 代碼如下:

//匯入js檔案
function getResult(url, ready) {
var xmlHttp;
var r = function() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
//alert(isIE);
var xmlstr;
var xmldoc;
var isIE = !!(window.attachEvent && !window.opera);
if (isIE)
xmldoc = xmlHttp.responseXML;
else {
xmlstr = xmlHttp.responseText;
alert(xmlstr);
var parser = new DOMParser();
xmldoc = parser.parseFromString(xmlstr, "text/xml");
}
try {
ready(xmldoc);
} catch (e) {
alert(e.message);
}
}
}
}
var create = function(url, r) {
try {
// Firefox, Opera 8.0+, Safari
xmlHttp = new XMLHttpRequest();
} catch (e) {
// Internet Explorer
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
alert("您的瀏覽器不支援AJAX!");
return false;
}
}
}
xmlHttp.onreadystatechange = r;
xmlHttp.open("GET", url, true);
xmlHttp.send(null);
}
create(url, r);
}

//應用
function ready(xmlDoc)
{

x=xmlDoc.getElementsByTagName("a")[1];
y=x.childNodes[0];
txt=y.nodeValue;
alert(txt);
}
getResult("../xml.jsp",ready);

xml:
複製代碼 代碼如下:

<r>
<a>ff</a>
<a>ggd</a>
</r>

childNodes 屬性返回子節點的列表。<a> 元素只有一個子節點,即一個文本節點。
下面的代碼檢索 <a> 元素的文本節點:
x=xmlDoc.getElementsByTagName("a")[0];
y=x.childNodes[0];
nodeValue 屬性返迴文本節點的文本值:
x=xmlDoc.getElementsByTagName("title")[0];
y=x.childNodes[0];
txt=y.nodeValue;
結果:txt = "ggd"
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.