使用getJSON显示数组

时间:2011-08-09 20:59:54

标签: c# jquery asp.net asp.net-mvc ajax

所以我的代码中有一个函数,我正在调用jQuery的getJSON。这是功能:

public JsonResult GetItems()
{
    var items = (from x in GetAllItems()
                 select new { x.ItemID, x.ItemType.Name, x.Description })
                .ToList();


    JsonResult result = Json(items, JsonRequestBehavior.AllowGet);

    return Json(result, JsonRequestBehavior.AllowGet);
}

这就是我用jQuery调用它的地方:

$.getJSON('/MyController/GetItems/', function (data) {
    // somehow iterate through items, displaying ItemID, Name, and Description
});

但是我被困在这里,我不知道该怎么做。我想遍历每个项目,并在警告框中显示ItemID,Name和Description。但我发现的每个示例都只显示迭代和显示只有的项目,但我的项目移动比显示2个属性。

2 个答案:

答案 0 :(得分:3)

试试这个:

$.getJSON('/MyController/GetItems/', function (data) {
    var name, itemId, description;
    $.each(data, function(){
         name = this.Name;
         itemId = this.ItemID;
         description = this.Description ;
         //You can use these variables and display them as per the need.  
    });
});

答案 1 :(得分:1)

使用firebug调试您的javascript代码。如果在代码中设置断点,则可以看到数据对象中的结果。我的猜测是应该写下这样的东西:

$.getJSON('/MyController/GetItems/', function (data) {
    for(var i = 0; i < data.length; i++) { // add a breakpoint here 
                                           // to see if reach the line and 
                                           // the content of data
        // do your funky stuff here
    }
});