Ich habe eine JSON-Datei, die eine Liste von Liedern enthält, die ich mit einer jquery-Funktion in bestimmte HTML-IDs verschieben möchte. Hier ist 2 der fünf Songs in meiner JSON-Datei (alle das gleiche Format wie folgt vor:JSON in HTML umwandeln
{
"songs": [
{
"title": "Hotel California",
"artist": "Eagles",
"album": "Hotel California",
"album_cover": "https://en.wikipedia.org/wiki/Hotel_California_(Eagles_album)#/media/File:Hotelcalifornia.jpg",
"release_date": "1976",
"site": "http://www.allmusic.com/album/hotel_california",
"generes": "Rock"
},
{
"title": "Back in Black",
"artist": "ACDC",
"album": "Back in Black",
"album_cover": "http://www.billboard.com/files/styles/review_main_image/public/media/acdc-back-in-black-album-cover-650.jpg",
"release_date": "1980",
"site": "http://www.allmusic.com/album/back_in_black",
"generes": "Rock"
}
]
}
Hier ist mein html, dass ich meine Daten versuche zu haben geladen:
<!doctype html>
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<title>Json</title>
</head>
<body>
<a id="site" href="#">
<img id="coverart" src="noalbum.png" />
</a>
<h1 id="title"></h1>
<h2 id="artist"></h2>
<h2 id="album"></h2>
<p id="date"></p>
<ul id="genres">
</ul>
</body>
<script src="my.js"></script>
</html>
Ich versuche, . eine Funktion, die diese Tags mit den entsprechenden Daten füllt und wiederholt den Vorgang, bis alle Songs zu erstellen, um das oben hTML-Format geformt sind nur wiederholt Hier ist meine js Datei so weit:
$("a").click(function() {
GetIndexData()
});
function GetIndexData() {
var param = "&nocache=" + Math.random() * 1000000;
$.getJSON('my.js', param, function(data) {
$.each(data, function(key, val) {
$('#' + key).html(val);
})
});
}
Jede Hilfe wäre Gre Danke!
Eine schnelle Sache: Wenn Ihre JSON-Datei 'lab4' heißt, dann soll sie in Ihrem getJSON-Aufruf' lab4.json' lauten. Erhalten Sie auch irgendwelche Konsolenfehler? –
Es ist nicht klar, wie Sie wollen, dass JSON im HTML angezeigt wird. Der JSON enthält ein Array von Songs, aber Sie haben nur einen Platz für einen Song im HTML. Welcher Song sollte in den HTML gehen? – Barmar
Warum ist 'Genres' eine Liste im HTML, aber eine einzelne Zeichenfolge im JSON? Sollte es nicht so etwas wie "Genres" sein: ["Rock", "Punk"] ' – Barmar