javascript - 如何从 Jquery 中的 Json 响应中提取元素

标签 javascript jquery json asp.net-mvc

我有一个 ASP.Net MVC 应用程序,并且使用此代码段从服务器获得了 JSON 响应。

public JsonResult GetVehicleByID(string VehicleID)
{
    db.Configuration.ProxyCreationEnabled = false;           

    var res = from type in db.Vehicles
              where type.ID == VehicleID
              select new
              {
                  ID = type.ID,
                  RegNo = type.RegNo
              };
    return Json(res, JsonRequestBehavior.AllowGet);
}

上面的代码返回以下 Json (Google Postman)

[
  {
    "ID": "000001",
    "Type": "Internal"
  }
]

我使用以下 jQuery Ajax 处理响应

function GetVehicle(id) {
    $.ajax({
        async: true,
        url: "GetVehicleByID?VehicleID=" + id,
        cache: false,
        dataType: "json",
        contentType: "application/json",
        success: function (data) {

            //Parsing Method 1
            //var a = jQuery.parseJSON(data);
            //console.log(a.Type);

            //Parsing Method 2
            var b = $.parseJSON(data);
            console.log(b['Type']);
        }
    });
}

我无法从此响应中提取 Type 元素。 Stack Overflow 上有几个类似的问题,这些问题的解决方案都是关于解析的。我尝试用两种方式解析,但浏览器日志给出以下错误

Uncaught SyntaxError: Unexpected token o in JSON at position 1

非常感谢您提供帮助,而不是将这个问题标记为重复。

最佳答案

尝试一下console.log(data[0].Type)。我相信 jQuery 已经为您将响应解析为 JSON,因为您指定了 dataType: "json" 并且来自服务器的响应具有正确的 Content-Type header 。

关于javascript - 如何从 Jquery 中的 Json 响应中提取元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38067285/

相关文章:

jquery - 为普通类隐藏的字段设置唯一的数据属性和 ID

Javascript代码分析器开源代码或插件

c# - 如何在 C# 中计算数组中 JSON 元素的数量

javascript - 输入值和字符串变量的连接

javascript - 来自模型的 TreeList 并存储在 Ext Js 6 中

javascript - 获取翻译后的游戏世界中的鼠标位置 : processing. js

jquery - socket.io 应用程序总是在提交时刷新

javascript - 如何创建 ' inside a string wrapped like ' 这是我的字符串'

ruby-on-rails - 将 JSON 数组转换为 Activerecord 模型数组?

javascript - Dropzone.js AMD 内部 Backbone View 事件