2009-07-31 2 views
6

У меня есть контроллер, который возвращает список пользовательских объектов модели LINQ-to-SQL в формате JSON в JQuery Ajax звонки:Как обрабатывать JSON с помощью jquery?

List<MyAppLibrary.Model.Search> listSearches = search.ToList(); 
     return new JsonResult { Data = listSearches }; 

У меня есть следующий Javascript, который получает ответ:

$.getJSON("/ajax/getbrands", 
    function(data) { 
     alert(data); 
    }); 

Я хотел бы знать, как я могу обработать этот ответ в javascript? Как получить параметр Name объекта Model.Search?

Спасибо.

+0

Если вы можете показать JSON, возвращаемый методом он будет иметь огромную помощь! – TheVillageIdiot

ответ

7

data переменная, которая получает от вызова JQuery AJAX содержит объект JSON. Вы можете получить доступ к полям каждому из ваших MyAppLibrary.Model.Search объектов в вашем JavaScript следующим образом:

// this will grab the Search object at index 0 of your list 
// and put the Name property's value of the Search object 
// into a var 
var firstItemName = data.Data[0].Name; 
6

Аргумент data будет иметь свойство Data, которое является вашим списком моделей Search.

$.getJSON("/ajax/getbrands", 
     function(data) { 
      $.each(data.Data, function(i, item) { 
        // ... item will be a Search model... 
        // ... i will be the index of the item in the list... 
        // ... 
      }); 
     } 
); 
+0

Я использовал этот формат, но мне пришлось изменить каждую строку на $ .each (данные, функция (i, item) { для этого. Интересно, что сайт jquery говорит использовать $ .each (data.items, function (i, item) { , но это не сработало для меня с jquery.1.3.2 – PhoebeB

Смежные вопросы