2016-09-23 6 views
-2

Ich versuche, dieses Javascript auf meiner Website auszuführen, aber ich kann nicht scheinen, um es zu laden. Ich folgte dem Tutorial-Link unten, aber es scheint einfach nicht richtig zu laden. Kann jemand helfen. Entschuldigung, ich bin neu in der Arbeit mit XML.Probleme mit Javascript und XML haben

Ich versuche auch, dies lokal zu starten, nicht auf einem Server.

Video Link: https://www.youtube.com/watch?v=ppzYGd0wi_c

<!DOCTYPE html> 

<html> 
<head> 


     <title>XML Testing</title> 


     <meta name=viewport content="width=device-width, initial-scale=1"> 




     <!-- CSS Style Information --> 
<!--  <link rel="stylesheet" href="files/style.css" media="all">--> 



     <script type="text/javascript" src="http://code.jquery.com/jquery-1.10.1.min.js"></script> 


     <script type="text/javascript"> 

      $(document).ready(function(){ 
       $.ajax({ 
        type: "GET", 
        url: "data.xml", 
        dataType: "xml", 
        success: xmlParser 
       }); 
      }); 

      function xmlParser(xml){ 
       $(xml).find("painting").each(function){ 
        $("#container").append('<div class="painting"><img src="images/' + $(this).find("image").text() + '" width="200" height="225" alt="' + $(this).find("title").text() + '" /><br/><div class="title">' + $(this).find("title").text() + '<br/>$' + $(this).find("price").text() + '</div></div>'); 
       }); 
      } 


     </script> 


    </head> 
    <body id="body"> 

     <div id="container"> 

     </div> 


    </body> 
</html> 

separate XML-Datei mit dem Namen data.xml

<?xml version="1.0"?> 


<paintings> 
    <painting> 
     <title>Boardwalk 5</title> 
     <artist>Arnie Palmer</artist> 
     <image>test.png</image> 
     <price>850</price> 
    </painting> 
    <painting> 
     <title>Boardwalk 5</title> 
     <artist>Arnie Palmer</artist> 
     <image>test.png</image> 
     <price>850</price> 
    </painting> 
</paintings> 
+1

Mögliche Duplikat [Ajax in JQuery tut funktioniert nicht von lokaler Datei] (http://stackoverflow.com/questions/17947971/ajax-in-jquery-does-not-work-from-local-file) – dave

+0

Können Sie weitere Details über das aktuelle Problem hinzufügen? Welchen Browser benutzen Sie? Wenn Sie die Entwicklertools für Ihren Browser verwenden, können Sie eine Fehlermeldung finden, die anderen helfen soll, Ihr Problem einzugrenzen. –

+0

Drücken Sie 'F12' in Ihrem Browser für die Browser-Konsole und finden Sie den Fehler. Es zeigt an, was Sie vermissen und welche Art von Fehler Sie bekommen. –

Antwort

1

JS Syntaxfehler, sollte sein:

$(xml).find("painting").each(function(){ 
    $("#container").append('<div class="painting"><img src="images/' + $(this).find("image").text() + '" width="200" height="225" alt="' + $(this).find("title").text() + '" /><br/><div class="title">' + $(this).find("title").text() + '<br/>$' + $(this).find("price").text() + '</div></div>'); 
}); 
+0

Erwähnen Sie zumindest, was Sie geändert haben. Niemand kann diesen einen Charakterunterschied ohne sorgfältige Inspektion erkennen. – dave

+0

Jede (** Funktion) {** zu jeder Funktion (** Funktion() {**) aktualisiert - die fehlende Klammer wurde hinzugefügt. – Picko