从get请求返回空对象检索数据的jQueryAjax

从get请求返回空对象检索数据的jQueryAjax,jquery,ajax,json,Jquery,Ajax,Json,我对返回JSON序列化对象的Web API进行了Jquery ajax调用。 这个调用正确地获取了JSon对象,但是如何解析它以显示城市 $.ajax({ url: '@Url.Action("GetDetails","home")', data: {'orderId':OId,}, success: function (d,status,xhr) { al

我对返回JSON序列化对象的Web API进行了Jquery ajax调用。 这个调用正确地获取了JSon对象,但是如何解析它以显示城市

  $.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的组件

我正在观察数据从get成功返回(使用Fiddler)。无论返回的数据是从post还是get返回的,返回的数据看起来都是相同的。

请尝试以下操作:

这里的
数据类型:“json”
告诉jQuery您希望它解析返回的json

$.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");
    }
});

尝试使用parseJSON

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