2013-11-15 98 views
0

我有一本書在一個JSON對象的形式從一個Ajax請求返回:單JSON對象訪問元素

{ 
    "status": "success", 
    "bytes": 2598, 
    "book": { 
    "isbn": 9781449397227, 
    "title": "jQuery Pocket Reference", 
    "author": "David Flanagan", 
    "description": "As someone who uses jQuery on a regular basis, blah blah.", 
    "published": "2000-05-02", 
    "cover": "http://bks9.books.google.co.uk/books?id=rK6YPwAACAAJ&printsec=frontcover&img=1&zoom=1&source=gbs_api", 
    "pages": 402, 
    } 
} 

我希望訪問ISBN,書名,作者元素等,以追加到我的輸出。我的問題是如何在我的

success: function(data) { 

}; 

我已經使用的console.log(數據)訪問這些;成功和Firebug告訴我,數據在那裏。我的其他阿賈克斯呼叫返回一個書籍陣列,我可以只使用類似的東西:

$.each(data.books, function(i,book) 

它工作正常。但以上面的例子只是一個單一的對象'書'。

感謝

+0

當你在'success'函數中查看Firebug時,你的'data'對象是怎麼樣的? –

回答

2
success: function(data) { 
console.log(data.book.isbn); 
console.log(data.book.title); 
console.log(data.book.author); 
}; 
+0

非常感謝,它是data.book.item所必需的。非常感激。 – user2996098

0

我不知道我理解的問題(因爲我一點英語)。但是如果你的AJAX調用有dataType:'json',你可以用

success: function(data) { 
    console.info(data) 

訪問數據,否則你有

success: function(data) { 
    data = $.parseJSON(data); 

情況下或者在使用分析數據使用Crockford的JSON lib中

success: function(data) { 
    data = JSON.parse(data);