2012-03-09 2 views
2

У меня проблема с getJSON и многомерным массивом. Если я использую один данные:jQuery getJSON Multi Array

{ "Идентификатор": "1", "Item1": 1, "Элемент2": "2", "Item3": "3"}

$.getJSON(geturl, function(data) { 
    $('.Item' + data.Id).html(data.Item1); 
} 

Это работает. Но если я использую результат с несколькими массивами;

[ 
    { "Id": "1", "Item1": "1", "Item2": "2", "Item3": "3", }, 
    { "Id": "1", "Item1": "1", "Item2": "2", "Item3": "3", } 
] 

Не работает. Может ли кто-нибудь сказать мне, почему?

+4

Я не думаю, что второй из них хорошо сформирован json – andreapier

+1

http://stackoverflow.com/questions/2487841/jquery-parse-json-multidimensional-array –

+0

http://stackoverflow.com/questions/ 2487841/jquery-parse-json-multimimensional-array Я пробовал, но как использовать элементы? ex: p.Item1 или p.Item2? –

ответ

2

Ваш второй пример JSON некорректно отформатирован, так как ему не хватает открывающей скобки, есть запятые в конце массивов, и ваше значение «array» не имеет ключа. Попробуйте это:

[{ 
    "Array": { 
     "Id": "1", 
     "Item1": 1, 
     "Item2": "2", 
     "Item3": "3" 
    }, 
    "Id": "1", 
    "Item1": "1", 
    "Item2": "2", 
    "Item3": "3" 
}] 

Вы можете использовать JSONLint, чтобы проверить правильность вашего JSON.

+0

http://stackoverflow.com/questions/2487841/jquery-parse-json-multidimensional-array –

+0

@ user1082554 Почему вы опубликовали эту ссылку? –