AJAX XML Ó¦ÓóÌÐò
±¾ÕÂÑÝʾʹÓà XML¡¢HTTP¡¢DOM ÒÔ¼° JavaScript µÄ HTML Ó¦ÓóÌÐò¡£
ʹÓÃµÄ XML Îĵµ
ÔÚ±¾ÕÂÖУ¬ÎÒÃǽ«Ê¹ÓÃÃûΪ "music_list.xml" µÄ XML Îļþ¡£
ÔÚ HTML ±í¸ñÖÐÏÔʾ XML Êý¾Ý
±¾Àý±éÀúÿ¸ö <TRACK> ÔªËØ£¬È»ºóÔÚ HTML ±í¸ñÖÐÏÔʾ <ARTIST> ºÍ <TITLE> ÔªËØµÄÖµ£º
ʵÀý
<html> <body> <table id="demo"></table> <script> function loadXMLDoc() { var xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myFunction(this); } }; xmlhttp.open("GET", "music_list.xml", true); xmlhttp.send(); } function myFunction(xml) { var i; var xmlDoc = xml.responseXML; var table="<tr><th>ÒÕÊõ¼Ò</th><th>ÇúÄ¿</th></tr>"; var x = xmlDoc.getElementsByTagName("TRACK"); for (i = 0; i <x.length; i++) { table += "<tr><td>" + x[i].getElementsByTagName("ARTIST")[0].childNodes[0].nodeValue + "</td><td>" + x[i].getElementsByTagName("TITLE")[0].childNodes[0].nodeValue + "</td></tr>"; } document.getElementById("demo").innerHTML = table; } </script> </body> </html>
ÈçÐè¸ü¶àÓйØÊ¹Óà JavaScript ºÍ XML DOM µÄÐÅÏ¢£¬Çë·ÃÎÊ DOM ¼ò½é¡£
ÔÚ HTML div ÔªËØÖÐÏÔʾµÚÒ»Ê×Çú×Ó
±¾ÀýʹÓÃÒ»¸öº¯ÊýÔÚ id="displayMUSIC" µÄ HTML ÔªËØÖÐÏÔʾµÚÒ»Ê׸èÇú£º
ʵÀý
displayMUSIC(0); function displayMUSIC(i) { var xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myFunction(this, i); } }; xmlhttp.open("GET", "music_list.xml", true); xmlhttp.send(); } function myFunction(xml, i) { var xmlDoc = xml.responseXML; x = xmlDoc.getElementsByTagName("TRACK"); document.getElementById("showMUSIC").innerHTML = "<ul>" + "<li>ÇúÄ¿£º" + x[i].getElementsByTagName("TITLE")[0].childNodes[0].nodeValue + "</li>" + "<li>ÒÕÊõ¼Ò£º" + x[i].getElementsByTagName("ARTIST")[0].childNodes[0].nodeValue + "</li>" + "<li>ר¼£º" + x[i].getElementsByTagName("ALBUM")[0].childNodes[0].nodeValue + "</li>" + "<li>¹ú¼Ò£º" + x[i].getElementsByTagName("COUNTRY")[0].childNodes[0].nodeValue + "</li>" + "<li>¹«Ë¾£º" + x[i].getElementsByTagName("COMPANY")[0].childNodes[0].nodeValue + "</li>" + "<li>Äê·Ý£º" + x[i].getElementsByTagName("YEAR")[0].childNodes[0].nodeValue + "</li>" + "</ul>"; }
ÔÚÇúĿ֮¼äµ¼º½
ÈçÐèÔÚÉÏÀýÖеÄÇúÄ¿¼äµ¼º½£¬ÇëÌí¼Ó next() ºÍ previous() º¯Êý£º
ʵÀý
function next() { // ÏÔʾÏÂÒ»Ê׸èÇú£¬³ý·ÇÒѵ½´ï×îºóÒ»Ê× if (i < x.length-1) { i++; displayMUSIC(i); } } function previous() { // ÏÔʾÉÏÒ»Ê׸èÇú£¬³ý·ÇÒѵ½´ïµÚÒ»Ê× if (i > 0) { i--; displayMUSIC(i); } }
ÔÚµã»÷¸èÇúʱÏÔʾר¼ÐÅÏ¢
×îºóÕâ¸öÀý×ÓÑÝʾµ±Óû§µã»÷ijһÊ׸èÇúʱÈçºÎÏÔʾר¼ÐÅÏ¢£º
ʵÀý
function displayMUSIC(i) { document.getElementById("showMUSIC").innerHTML = "<ul>" + "<li>ÇúÄ¿£º" + x[i].getElementsByTagName("TITLE")[0].childNodes[0].nodeValue + "</li>" + "<li>ÒÕÊõ¼Ò£º" + x[i].getElementsByTagName("ARTIST")[0].childNodes[0].nodeValue + "</li>" + "<li>ר¼£º" + x[i].getElementsByTagName("ALBUM")[0].childNodes[0].nodeValue + "</li>" + "<li>¹ú¼Ò£º" + x[i].getElementsByTagName("COUNTRY")[0].childNodes[0].nodeValue + "</li>" + "<li>¹«Ë¾£º" + x[i].getElementsByTagName("COMPANY")[0].childNodes[0].nodeValue + "</li>" + "<li>Äê·Ý£º" + x[i].getElementsByTagName("YEAR")[0].childNodes[0].nodeValue + "</li>" + "</ul>"; }