2016-10-06 7 views
0

Ich habe versucht, ein XLM-Dokument in eine HTML-Datei mit Hilfe von Javascript zu laden. Bitte beachten Sie, dass ich nicht versucht habe, alle Informationen aus der XML-Datei zu laden, sondern nur einen Teil davon (denke nicht, dass das wichtig sein sollte).XML kann nicht geladen werden Inhalt mit Javascript

Das ist mein HTML-Code:

<!DOCTYPE html> 
<html> 
    <head> 
     <meta charset="utf-8" /> 
     <title> Stillinger </title> 
     <style> 
      table, th, td { 
      border: 1px solid black; 
      border-collapse:collapse; 
      } 
      th, td { 
      padding: 5px; 
      } 
     </style> 
    </head> 
<body> 
    <button type="button" onclick="loadXMLDoc()">Get available jobs</button> 
    <br><br> 
    <table id="stillinger"> </table> 
    <script> 
     function loadXMLDoc() { 
      var xmlhttp = new XMLHttpRequest(); 
      xmlhttp.onreadystatechange = function() { 
       if (this.readyState == 4 && this.status == 200) { 
        myFunction(this); 
       } 
      }; 
      xmlhttp.open("GET", "Lab06.xml", true); 
      xmlhttp.send(); 
     } 
     function myFunction(xml) { 
      var i; 
      var xmlDoc = xml.responseXML; 
      var table ="<tr><th>stilling</th><th>arbeidssted</th></tr>"; 
      var x = xmlDoc.getElementsByTagName("job1"); 
      for (i = 0; i <x.length; i++) { 
       table += "<tr><td>" + 
       x[i].getElementsByTagName("STILLING") [0].childNodes [0].nodeValue + "</td><td>" + 
       x[i].getElementsByTagName("ARBEIDSSTED") [0].childNodes [0].nodeValue + "</td></tr>"; 
      } 
      document.getElementById("stillinger").innerHTML = table; 
     } 
    </script> 
</body> 
</html> 

Das ist mein XML-Code:

<?xml version="1.0" encoding="UTF-8"?> 
<jobber_sentrum> 
    <job1> 
     <stilling>Systemadministrator ved dokumentsenteret</stilling> 
     <arbeidssted> 5004 Bergen </arbeidssted> 
     <arbeidsgiver> Fiskeridirektoratet </arbeidsgiver> 
     <dato_registrert> 10.08.2016 </dato_registrert> 
     <dato_søknadsfrist> 29.09.2016 </dato_søknadsfrist> 
    </job> 
    <job2> 
     <stilling>Dataforvalter/analytiker</stilling> 
     <arbeidssted> 5015 Bergen </arbeidssted> 
     <arbeidsgiver> Folkehelseinstituttet </arbeidsgiver> 
     <dato_registrert> 07.08.2016 </dato_registrert> 
     <dato_søknadsfrist> 30.09.2016</dato_søknadsfrist> 
    </job> 
    <job3> 
     <stilling> Stipendiat i rettvitskap</stilling> 
     <arbeidssted> 5045 Bergen </arbeidssted> 
     <arbeidsgiver> Norges Handelshøyskole </arbeidsgiver> 
     <dato_registrert> 15.09.2016 </dato_registrert> 
     <dato_søknadsfrist> 13.10.2016 </dato_søknadsfrist> 
    </job> 
    <job> 
     <stilling> Soussjef/assisterende kjøkkensjef</stilling> 
     <arbeidssted> Cafe Opera</arbeidssted> 
     <arbeidsgiver> Cafe Opera AS </arbeidsgiver> 
     <dato_registrert> 12.09.2016 </dato_registrert> 
     <dato_søknadsfrist> 21.10.2016 </dato_søknadsfrist> 
    </job> 
</jobber_sentrum> 

Hat jemand sehen, was der Fehler ist?

+1

Nun, was macht der Browser-Konsole sagen? –

+0

stillinger.html: 29 XMLHttpRequest kann Datei: /// C: /Users/Joachim/Documents/Dropbox/INFO100/Lab06/Lab06.xml nicht laden. Cross-Ursprungsanforderungen werden nur für Protokollschemata unterstützt: http, Daten, Chrome, Chrome-Erweiterung, https, Chrome-Erweiterung-Ressource.loadXMLDoc @ Stillinger.html: 29 – JokkeMedKniven

+0

So gibt es Ihr Problem ..... Hat nichts zu tun Mit dem Code, müssen Sie die XMLHttpRequest für das Dateiprotokoll nicht verwenden. Sie sollten einen lokalen Server ausführen, damit diese Probleme nicht auftreten. Eine wirklich schlechte Idee ist, Ihren Browser mit Flags zu laden, so dass es den Dateizugriff erlaubt. – epascarello

Antwort

0
var xml = "<rss version='2.0'><channel><title>RSSTitle</title</channel></rss>", 
xmlDoc = $.parseXML(xml), 
$xml = $(xmlDoc), 
$title = $xml.find("title"); 
console.log($title.text()); // it will print RSSTitle 

Verwendung XML-Parser und spezifische Tag von XML-Antwort zu finden und es verwenden, Hope this Sie können helfen ..

Verwandte Themen