Anfänger: jquery und ajax json response

haunt

Lieutenant
Registriert
Juni 2010
Beiträge
584
Hallo zusammen,
ich versuche mich gerade an jquery und habe ein Problem.

ich greife eine API ab:
$.ajax(settings).done(function (response) {
console.log(response);
});

Liefert mir in der Google Console folgendes:
  1. {modifyTimestamp: "..", deviceStatus: {…}, vehicleStatus: {…}, driverStatus: null, eventStatusList: Array(40)}
    1. deviceStatus: {id: "..", hardwareType: null, hardwareVersion: null, firmwareVersion: "", deviceGroupId: null, …} driverStatus: null
    2. eventStatusList: (40) [{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]
    3. modifyTimestamp: ".."
    4. vehicleStatus: {id: "..", vin: null, tecDocMakeId: null, tecDocModelId: null, tecDocVehicleId: null, …}
    5. proto: Object
Wie komm ich denn jetzt an das Zeug ran?
deviceStatus ist ja vermutlich kein Array
EventStatus List scheint eines zu sein.

Kann mir jemand einen Tipp geben wie ich hier weiter komme?
Irgendwie müsste ich ja zum beispiel mit response['deviceStatus']['id'] ab einen Wert kommen und mit
response['eventStatusList'][1] zum Beispiel an das Array. Da gibt es dann die Unterpunkte:
1:
eventData:
  1. createTimestamp: ""
  2. modifyTimestamp: ""
  3. unitId:
  4. unitType: ""
  5. value: ""
Wäre über jeden Tipp, auch schon nach was ich googlen müsste, dankbar :-)

Stehe gerade voll auf dem Schlauch.
 
haunt schrieb:
deviceStatus ist ja vermutlich kein Array
EventStatus List scheint eines zu sein.
Ja, genau:
geschweifte Klammern = Object
eckige Klammern = Array

haunt schrieb:
Irgendwie müsste ich ja zum beispiel mit response['deviceStatus']['id'] ab einen Wert kommen und mit
response['eventStatusList'][1] zum Beispiel an das Array.
Sieht soweit korrekt aus. Wo hakt's denn?

Wenn er dir die gewünschten Daten in der Konsole ausgibt, kannst du auch in deinem Code drauf zugreifen.
 
Sieht soweit korrekt aus. Wo hakt's denn?

In der console klappt das, würde mir die Sachen nun gerne auf der Seite anzeigen lassen:
var test = response['deviceStatus']['id'];

Wenn ich das aber so wie oben schreibe bekomme ich folgenden Fehler:

tollesneu.js?ver=5.2.5:26 Uncaught ReferenceError: response is not defined

Dann würde ich gerne das ganze in einem DIV anzeigen lassen, das klappt auch soweit, aber eben nicht mit dem Output...

var helloWorld = $('#regFahrzeugliste').html(test);
 
Füg deinen Code, der auf response zugreift, exakt dort ein, wo du das console.log gemacht hast.
 
  • Gefällt mir
Reaktionen: mental.dIseASe
Danke, hat super geklappt. Sorry für die späte Antwort. War über die Feiertage doch etwas stressiger als gedacht.
 
Zurück
Oben