2012-02-28 67 views
1

我看了很多例子,但我找不到任何東西來解決我的問題。我有以下格式的json數組;Json迭代多維數組給出了未定義的錯誤

{ "value" : [ 
    { "...some variables...", 
     "comments" : [ 
     { "user_name" : "arascanakin", 
      "picture_url" : "...some url..." 
     } 
     ], 
     "error" : false, 
     "msg" : "some message" 
    } 

P.S.可能有語法錯誤,我手動編寫了JSON數組。這是正確的。

我有以下jQuery來遍歷數組:

$.each($task_array, function (i, task) 
{ 
    // some stuff 
    $.each(task.comments, function(i, $task_comment) 
    { 
     // some stuff 
     // $task_comment is undefined here 
    }); 
}); 

問題是task.comments是未定義的,當我每個註釋元素設置爲$task_comment

任何想法來解決這個問題?對我來說似乎是正確的,但我讀到JavaScript不允許多維數組。

+1

如果你的JSON數據是正確的,那麼你的問題是不相關的JSON,而是如何訪問JavaScript對象/數組。你是對的,JavaScript沒有多維數組,但你當然可以有數組的數組。這裏沒什麼好說的,真的。如果'task.comments'是一個數組,那麼'$ task_comment'將是數組條目的值:http://jsfiddle.net/7yJkG/。看起來數據不像你想的那樣,仔細檢查一下。 – 2012-02-28 16:54:54

+0

你有沒有試過經典的JavaScript?有點像'tsk = task.comments; for(var i = 0; i 2012-02-28 16:56:50

+0

我通過json_encode($ return)語句發送這個json。我不會通過手動提供json。 – aacanakin 2012-02-28 17:01:09

回答