2016-06-11 1 views
0

Итак, у меня есть модальный диалог JQuery, в котором содержится информация о регистрации пользователя, которая затем отправляется как JSON в веб-службу. Веб-служба обрабатывает запрос на регистрацию и отправляет обратно свой JSON. Все это работает, за исключением того, что я не могу понять, как разобрать JSON. Вот код вызывается на успех $.ajax метода:Невозможно прочитать ответ JSON с веб-службы

success: function (data) { 
          console.log(data); 
          console.log(data[0].Reply); 
          $("#spStatus").css('class',  
          'textGreen').text(data[0].Reply); 

Я регистрируя данные в консоль, чтобы осмотреть то, что возвращается, и это то, что я вижу:

Console messages

Я не могу понять, как читать информацию, содержащуюся в data, и веб-служба делает свою часть для возвращения данных JSON. Я не могу использовать JSON.parse, потому что это уже данные JSON, которые возвращаются. Я знаю, что это должно быть что-то простое. Помогите?

+0

Попробуйте: 'console.log (JSON.parse (data.d) .Reply);' –

+1

Амир, вот и все! Отправьте это как ответ, чтобы я мог дать вам реквизиты. Спасибо! –

+0

Если вы контролируете api, исправьте источник – charlietfl

ответ

1

Ответом является JSON, который имеет свойство d которое является строка JSON и поэтому:

success: function (data) { 
    var jsonStr = data.d; 
    var json = JSON.parse(jsonStr); 

    console.log(json.Reply); 
} 
0

Вы должны использовать JSON.parse (данных), это будет карта в объект

success: function (data) { 
    var obj=JSON.parse(data); <----- this is your object now 

} 
+0

Это неверно, потому что данные возвращаются уже в формате JSON. Это вызывает ошибку. Решение Амира является правильным. Вызов «JSON.parse (data.d)» - это то, что работает. Но я ценю, что вы нашли время ответить мне! (улыбка) –