Как обработать вывод JSON в AJAX? - PullRequest
0 голосов
/ 11 октября 2011

У меня есть этот фрагмент кода в файле .js

$(function () {
    // KeyDates
    var url = "http://localhost:8732/Design_Time_Addresses/Intel.IIP.MDF.WCF/ProgramCalendarService/GetKeyDatesCalendarNew";

    $.ajax({
        url: url,
        data: null,
        type: 'POST',
        contentType: 'application/json',
        dataType: 'json',
        success: function (GetKeyDatesCalendarDataNew) {
            alert(GetKeyDatesCalendarDataNew);
            $(document).ajaxStop($.unblockUI);
        }
    });

});

Как мне обработать пару ключ-значение в GetKeyDatesCalendarDataNew?

Ответы [ 4 ]

1 голос
/ 11 октября 2011

Вы, вероятно, хотите знать, как получить доступ к реквизиту объекта. Для этого используйте цикл for in для перебора значений объекта:

success: function (GetKeyDatesCalendarDataNew) {
   for(var key in GetKeyDatesCalendarDataNew)
       {
           var value = GetKeyDatesCalendarDataNew[key];
           // do somehitng based on the key and/or value iterated
       }
}
0 голосов
/ 11 октября 2011
$.each(GetKeyDatesCalendarDataNew,function(key,value){
    //do something here
})
0 голосов
/ 11 октября 2011

Вы можете использовать функцию «getJSON» JQuery, где вам нужно передать URL и указать функцию обратного вызова. Ваш вызов ajax будет обрабатываться функцией getJSON.В функции обратного вызова вы можете получить доступ к ключам в качестве свойств.Хороший пример

Lav G

0 голосов
/ 11 октября 2011

В этом случае аргумент функции успеха - это оцененный JSON, который был возвращен из запроса Ajax. Поэтому GetKeyDatesCalendarDataNew, который вы должны переименовать во что-то вроде data, становится фактическими данными, которые вернул ваш сервер.

Вы можете обрабатывать данные, только если знаете их структуру. Один простой способ узнать это - сделать console.log(GetKeyDatesCalendarDataNew), а затем легко обработать его с помощью цикла for, если это массив, или for x in.., если это объект.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...