Как разобрать JSON с JQuery и как проверить, действительно ли это JSON - PullRequest
2 голосов
/ 10 ноября 2010

Я делаю вызов ajax и получаю обратно то, что якобы json resopnse. Сначала мне нужно узнать, правильно ли сформирован этот json, и если да, то как мне разобрать его с помощью jquery? Вот как это выглядит. Они только 2 записи.

Когда я alert(response); я получаю

[object Object],[object Object]

и когда я console.debug(response); я получаю следующие 2 объекта в этом формате

[Object { RowId=1,  more...}, Object { RowId=2,  more...}]

и когда я нажимаю ссылку more для любого из них, я получаю это

RowId         1
Description   "This is description of Row1"
Total         15 

Так это выглядит как правильно сформированный JSON. Во-вторых, как мне разобрать это и использовать в моем jquery. Мне нужен способ синтаксического анализа, который хорошо поддерживается. Я пытался alert(JSON.parse(resp)), но он абсолютно ничего не сделал.

Ответы [ 2 ]

3 голосов
/ 10 ноября 2010

Это действительно JSON, так как это больше не JSON.Вызов jQuery Ajax уже проанализировал JSON в объектах Javascript для вас.Причина, по которой вы не можете выполнить синтаксический анализ, заключается в том, что он уже проанализирован.

Если вы хотите выполнить синтаксический анализ JSON самостоятельно, вы должны использовать тип данных text, чтобы получить результат без анализа.*

3 голосов
/ 10 ноября 2010

http://api.jquery.com/jQuery.parseJSON/ если это ajax-запрос, просто сделайте

$.ajax(/*url*/,
dataType: 'json',
success: function(data){
  //data is json and already evaluated!
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...