2016-04-13 16 views
1

Ich arbeite an einer XML zu HTML Konvertierung und kann sie nicht in HTML umwandeln. Was ich will ist, die XML-Datei zu lesen und dann jedes Element und Attribut zu verwenden, möchte ich in der HTML-Tabellenansicht anzeigen. Aber das ist mein Versuch und es hat nicht funktioniert.XML in HTML/JS analysieren

Hier sind meine Code.

HTML

<!DOCTYPE html> 

<html> 
<body> 

<p id="demo"></p> 

<script> 
var xhttp = new XMLHttpRequest(); 
xhttp.onreadystatechange = function() { 
    if (xhttp.readyState == 4 && xhttp.status == 200) { 
     myFunction(xhttp); 
    } 
}; 
xhttp.open("GET", "datafile.xml", true); 
xhttp.send(); 

function myFunction(xml) { 
    var xmlDoc = xml.responseXML; 
    var x = xmlDoc.getElementsByTagName("location")[2]; 
    var txt = x.getAttribute("desc"); 
    document.getElementById("demo").innerHTML = txt; 
} 
</script> 

</body> 
</html> 

XML-Datei - einige datafile.xml

<resultSet xmlns="urn:trimet:arrivals" queryTime="1460524583363"> 
    <location desc="Country Club & Wembley Park" dir="Westbound" lat="45.423844983607" lng="-122.697651868185" locid="1233"/> 

    <arrival block="7867" departed="false" dir="1" status="estimated" estimated="1460528004000" fullSign="78 Beaverton TC" piece="1" route="78" scheduled="1460528004000" shortSign="78 To Beaverton TC" locid="1233" detour="false"> 
     <blockPosition feet="74966" at="1460524562000" heading="175" lat="45.4768926" lng="-122.8055493"> 
      <trip desc="Lake Oswego Transit Center" dir="0" route="78" tripNum="6322277" destDist="72719" pattern="10" progress="6417"/> 
      <trip desc="Beaverton TC 78 Bay" dir="1" route="78" tripNum="6322387" destDist="8664" pattern="6" progress="0"/> 
     </blockPosition> 
    </arrival> 

    <arrival block="7868" departed="false" dir="1" status="scheduled" fullSign="78 Beaverton TC" piece="1" route="78" scheduled="1460552534000" shortSign="78 To Beaverton TC" locid="1233" detour="false"/> 

    <arrival block="3767" departed="false" dir="0" status="scheduled" fullSign="37 Lake Grove to Tualatin Park & Ride" piece="1" route="37" scheduled="1460557107000" shortSign="37 To Tualatin P&R" locid="1233" detour="false"/> 

</resultSet> 

Bitte geben was darauf hindeutet, wo habe ich falsch gemacht und wie dieser Fehler behoben werden konnte.

+0

Sie haben Versuchen nur einen 'location' Knoten in der XML, aber Sie versuchen, den dritten Knoten mit' [2] 'zuzugreifen, die nicht existiert. Auch wenn Ihr XML buchstäblich "Country Club & Wembley Park" enthält, ist es nicht gültig - http://stackoverflow.com/questions/730133/invalid-characters-in-xml –

+0

Hier ist ein praktischer Link: http: // code. tutsplus.com/tutorials/quick-tip-use-jquery-to-retrieve-data-from-an-xml-file--net-390 –

Antwort

1

diese Aussage

var x = xmlDoc.getElementsByTagName("location")[0]