2014-12-19 67 views
1

我有一個Jquery ajax調用Web API,返回一個JSON序列化對象。 這個調用正確得到JSon對象,但是我怎麼解析它才能顯示這個城市?Jquery ajax從獲取請求中檢索數據返回空對象

$.ajax({ 
       url: '@Url.Action("GetDetails","home")', 
       data: {'orderId':OId,}, 
       success: function (d,status,xhr) { 
        alert(d[0].City); 
       }, 
       error: function (data) { 
        alert("Error"); 
       } 
      }); 

返回的數據是這樣的:

[{"id":52, 
"FName":"John", 
"LName":"Smith", 
"Street":"Main Street", 
"City":"Magic Kingdom", 
"State":"FL"}] 

在Ajax調用警報返回 「未定義」。我對Ajax post調用返回的數據做了基本相同的事情,在這種情況下,警報按預期工作。我錯過了什麼?我如何訪問返回的JSON組件?

我正在看數據從成功返回(使用Fiddler)。返回的數據看起來是相同的,無論它是從帖子返回還是獲取。

回答

1

試試這個:

這裏dataType: "json"告訴你想讓它解析返回的JSON jQuery的。

$.ajax({ 
    url: '@Url.Action("GetDetails","home")', 
    data: { 
     'orderId': OId, 
    }, 
    dataType: "json", 
    success: function (d, status, xhr) { 
     alert(d[0].City); 
    }, 
    error: function (data) { 
     alert("Error"); 
    } 
}); 
0

嘗試用parseJSON

var data= jQuery.parseJSON(d); 
alert(data.City);