2016-12-22 4 views
2

Ich versuche, eine lokale JSON-Datei von jquery zu laden. Der Code funktioniert einwandfrei, aber die Daten sind nicht im Array verfügbar.Wie lade ich eine lokale JSON-Datei?

$.getJSON("/ajax/data/myjasonfile.json", function(json) { 
     console.log(json); 
    }); 

meine Konsole zeigt nur

Object {data: Array[1]} 

meine Probe json

{ 
    "data": [ 
     { 
      "number": "1234", 
      "nameOne": "Laten Thamn", 
      "type": "Fishing Vessels", 
      "flagName": "5467", 
      "buildDate":"12/08/2016" 
     } 
    ] 
} 
+1

"die Daten in Array nicht verfügbar sind", was meinst du damit? –

+0

Meinst du local für die Client-Maschine? Wenn dies der Fall ist, ist dies nicht möglich. Wenn Sie "local" für den Server meinen, dann sollte das, was Sie haben, gut funktionieren, vorausgesetzt, Ihr Pfad ist gültig. –

+0

Die Daten sollten als Objekt verfügbar sein. Was sagt Ihre Konsole – amenadiel

Antwort

2

diesen Versuchen Sie, Ihre Antwort Struktur zu verstehen.

$.getJSON("myjasonfile.json", function(json) { 
     console.log(json); // access the response object 
     console.log(json.data); // access the array 
     console.log(json.data[0]); // access the first object of the array 
     console.log(json.data[0].number); // access the first object proprty of the array 
    }); 
+0

woww .. es funktioniert, danke – shaheer

+0

froh, um zu helfen :) – Deep

0

jQuery.getJSON() Last JSON-codierten Daten von dem Server eine GET-HTTP-Anforderung verwendet wird.

Wie Sie in Ihrer JSON Struktur veröffentlichen können Sie auf das Array zugreifen, indem json.data Aufruf:

$.getJSON("/ajax/data/myjasonfile.json", function(json) { 
    console.log(json.data); // Logs your array 
}); 
+0

Wenn es 'Object {data: Array1}' 'zeigt, ist es bereits ein Objekt – Liam

+0

Ich sehe nicht, wie das auch mit dem Update hilft? – Liam

-1

Sie können versuchen, diese:

$.getJSON("test.json", function(json) { 
    console.log(json); // this will show the info it in firebug console 
}); 

Ich denke, einige Probleme in Ihrem Weg zu Rufen Sie die JSON-Datei auf. Sie müssen den Pfad erneut prüfen.

können Sie diesen Link: Loading local JSON file

+0

Das ist identisch mit dem, was er bereits hat! – Liam

+0

Pfad ist korrekt – shaheer

+0

Sie sollten oben genannten Link folgen. es wird dir helfen. –

0

Shop Die JSON-Daten in Array:

$.getJSON("/ajax/data/myjasonfile.json", function(Data) { 
     var array=[]; 
    for(var i=1;i<Data.length;i++) 
    { 
     var b=Data[i]; 
     var c=[]; 
     c.push(b.number); 
     c.push(b.nameOne); 
     c.push(b.type); 
     c.push(b.flagName); 
     c.push(b.buildDate); 
     array.push(c); 
    } 
     console.log(array); 
    }); 
+1

Darf ich vorschlagen, dass Sie einige Kontext hinzufügen, um Ihre Antwort zu erklären? –

+1

Vielen Dank für dieses Code-Snippet, das einige sofortige Hilfe bieten kann. Eine richtige Erklärung [würde erheblich verbessern] (// meta.stackexchange.com/q/114762) ihren pädagogischen Wert, indem sie * warum * dies eine gute Lösung für das Problem ist, und es für zukünftige Leser mit ähnlichen, nützlicher machen würde, aber nicht identisch, Fragen. Bitte [bearbeiten] Sie Ihre Antwort, um eine Erläuterung hinzuzufügen und geben Sie an, welche Einschränkungen und Annahmen gelten. –

Verwandte Themen