2011-07-26 49 views
0
$.getJSON("<%: Url.Action("myUrl", "cont") %>/", function(data) { 
     var items = []; 
     $.each(data, function(key, val) { 
      items.push(val); 
     }); 
    }); 

    [Authorize] 
    [OutputCache(Duration = 0, VaryByParam = "None")] 
    public JsonResult myUrl() 
    { 
     var list = _repository.GetAll(); 
     var items = list.Select(c => c.Name).ToList(); 

     return Json(items, JsonRequestBehavior.AllowGet); 
    } 

我在服務器端(字符串名稱列表)創建一個列表並返回一個JsonResult。我試圖讓客戶端使用jQuery的列表,所以我可以檢查它是否包含一個特定的項目。上述does not似乎工作...任何建議?得到jQuery對象與jQuery

+0

是不是數據的JSON對象?我想你可以按照你的意願使用它。 –

回答

0

你必須解析JSON:

$.get("<%: Url.Action("myUrl", "cont") %>/", function(data) { 
    var items = []; 
    data = $.parseJSON(data); 
    $.each(data, function(key, val) { 
     items.push(val); 
    }); 
}); 
+0

parseJSON返回null –

+0

對不起,沒有看到'getJSON'。也許試試我目前的方法。如果您使用POST而不是GET,請對其進行修改。有了這個,你可以在被$ .parseJSON處理之前提醒(數據)。 – marc

+0

我試過你的方法,它仍然是空的,我知道服務器返回的JSonResult有它的項目 –