2012-06-07 66 views
8

嘿,我試圖從JSON文件中用jQuery讀取數據。這是我的JS:使用jQuery閱讀JSON文件

$(document).ready(function() { 
    var myItems; 

    $.getJSON('testData.json', function(data) { 
     myItems = data.items; 
     console.log(myItems); 
    }); 
}); 

這是JSON文件:

{"fname":"rafael","lname":"marques","age":"19"} 
{"fname":"daniel","lname":"marques","age":"19"} 

當我在瀏覽器中打開我的HTML網頁我什麼也看不到在控制檯中。

+2

我沒有看到你設置任何顯示。但是因爲有'console.log',你可以打開開發者控制檯來查看結果。 – nhahtdh

+0

JSON應該包含一個對象,而不是兩個。 [使用JSONlint](http://jsonlint.org/)來驗證它。 – Blazemonger

+0

也許打開控制檯?按F12 – chepe263

回答

13

添加逗號每個對象後,與[]然後包裝並在JSON文件與財產items對象封閉他們,所以它看起來像

{ 
    items: [ 
    { 
     "fname": "rafael", 
     "lname": "marques", 
     "age": "19"}, 
    { 
     "fname": "daniel", 
     "lname": "marques", 
     "age": "19" 
    }] 
} 

,那麼你應該嘗試

$.each(data.items, function(key, val) { 
    alert(val.fname); 
    alert(val.lname); 
}) 
2
{"fname":"rafael","lname":"marques","age":"19"} 
{"fname":"daniel","lname":"marques","age":"19"} 

不是一個正確的json文件。在行之間添加一個逗號或使其類似於:

{items:[ 
    {"fname":"rafael","lname":"marques","age":"19"}, 
    {"fname":"daniel","lname":"marques","age":"19"} 
]} 

符合您的明顯要求。

但打開控制檯查看錯誤將解決此問題。