/ / JSON-Objekte nach einem bestimmten Wert mit JS / AJAX (Last.fm) suchen - json, last.fm

Durchsuchen Sie JSON-Objekte nach einem bestimmten Wert mit JS / AJAX (Last.fm) - json, last.fm

Ich verwende die Last.fm-API, um Daten zurückzugeben JSON-Format und das funktioniert gut. Ich benutze die user.getTopArtist () API-Aufruf

Beim Laden der Seite wird ein DIV-Objekt erstelltjeder Künstler enthält relevante Details aus den JSON-Daten. Wenn ein Benutzer eine Aktion mit dem DIV ausführt, möchte ich im Grunde die Bild-URL tauschen, um eine größere Bildgröße anzuzeigen!

Wie kann ich ein JSON-Objekt finden / referenzieren, indem ich dessen gespeicherten Wert anpasse?

Zum Beispiel, wenn ich den Künstlernamen "Kate Bush" zuordnen muss und dann die "extralarge" Bild-URL abrufen soll. Wie würde ich das tun?

Die Datenstruktur sieht folgendermaßen aus:

{"topartists":{
"artist":[{
"name":"Kate Bush",
"playcount":"20",
"mbid":"4b585938-f271-45e2-b19a-91c634b5e396",
"url":"http://www.last.fm/music/Kate+Bush",
"image":[
{"#text":"http://userserve-ak.last.fm/serve/34/224740.jpg","size":"small"},
{"#text":"http://userserve-ak.last.fm/serve/64/224740.jpg","size":"medium"},
{"#text":"http://userserve-ak.last.fm/serve/126/224740.jpg","size":"large"},
{"#text":"http://userserve-ak.last.fm/serve/252/224740.jpg","size":"extralarge"},
{"#text":"http://userserve-ak.last.fm/serve/500/224740/Kate+Bush.jpg","size":"mega"}
]
}
}

Antworten:

0 für die Antwort № 1

Was verwenden Sie, um JSON zu parsen? Hier ist ein jQuery-Beispiel http://api.jquery.com/jQuery.parseJSON/


0 für die Antwort № 2

Wenn es nur für diese spezielle Aufgabe ist, dann das $.each(data.topartists.artist[0].images) Ansatz würde funktionieren.

Als generische Lösung ... Schauen Sie mal rein http://goessner.net/articles/JsonPath/ - Das ist XPath-Variante für JSON