XML 应用程序

Kitendo hiki kinademoa kuitumia XML, HTTP, DOM na JavaScript katika programu ya HTML.

wasifu wa taarifa ya XML

Kwenye kitendo hiki, tunaenda kuitumia wasifu kama "music_list.xml" ya XML.

Inonyesha data ya XML katika tabia ya HTML

Mfano hii unaingiza kila <TRACK> tukio, kisha inaonyesha upeo wa <ARTIST> na <TITLE> katika tabia ya HTML:

姆皮塔

<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>waandishi</th><th>kituo</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>

Jaribu kwenye kikapteni

Kwa kusoma zaidi kuhusu kusababisha JavaScript na XML DOM, tafadhali nia hapa: DOM Inayotambulika

Kuonyesha kipenzi kimekubaliwa kwa kufungua HTML div elementi

Kwa hali hii, maelezo hii inaeonyesha kama iweza kuonyesha kipenzi kimekubaliwa kwa kumwita kipenzi kimekubaliwa kwa kufungua HTML elementi ya id="displayMUSIC":

姆皮塔

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>artista:" +
  x[i].getElementsByTagName("ARTIST")[0].childNodes[0].nodeValue + "</li>" +
  "<li>albamu:" +
  x[i].getElementsByTagName("ALBUM")[0].childNodes[0].nodeValue + "</li>" +
  "<li>nchi:" +
  x[i].getElementsByTagName("COUNTRY")[0].childNodes[0].nodeValue + "</li>" +
  "<li>shirika:" +
  x[i].getElementsByTagName("COMPANY")[0].childNodes[0].nodeValue + "</li>" +
  "<li>mwaka:" + 
  x[i].getElementsByTagName("YEAR")[0].childNodes[0].nodeValue + "</li>" +
  "</ul>";
}

Jaribu kwenye kikapteni

Kusafiri kati ya kipenzi

Kwa kusafiri kati ya kipenzi kwenye maelezo hii, tafadhali jifunguza next() na previous() kwa sababu ya msaada:

姆皮塔

function next() {
  // Kuonyesha kipenzi kimeulizwa kufuatana, hata iweze kuwa kipenzi kimekubaliwa kwanza
   if (i < x.length-1) {
    i++;
    displayMUSIC(i);
  }
}
function previous() {
  // Kuonyesha kipenzi kimeulizwa kabla, hata iweze kuwa kipenzi kimekubaliwa kwanza
   if (i > 0) {
  i--;
  displayMUSIC(i);
  }
} 

Jaribu kwenye kikapteni

Kuonyesha taarifa za albamu kwa kumwita kipenzi

Kwa hali hii, maelezo hii inaeonyesha kama iweza kuonyesha taarifa za albamu kwa kumwita kipenzi kimoja kwa mwanasoma:

姆皮塔

function displayMUSIC(i) {
  document.getElementById("showMUSIC").innerHTML =
  "<ul>" + 
  "<li>曲子:" +
  x[i].getElementsByTagName("TITLE")[0].childNodes[0].nodeValue + "</li>" +
  "<li>artista:" +
  x[i].getElementsByTagName("ARTIST")[0].childNodes[0].nodeValue + "</li>" +
  "<li>albamu:" +
  x[i].getElementsByTagName("ALBUM")[0].childNodes[0].nodeValue + "</li>" +
  "<li>nchi:" +
  x[i].getElementsByTagName("COUNTRY")[0].childNodes[0].nodeValue + "</li>" +
  "<li>shirika:" +
  x[i].getElementsByTagName("COMPANY")[0].childNodes[0].nodeValue + "</li>" +
  "<li>mwaka:" + 
  x[i].getElementsByTagName("YEAR")[0].childNodes[0].nodeValue + "</li>" +
  "</ul>";
}

Jaribu kwenye kikapteni