jquery jqXHR responseText将字符串转换为JSON

jquery jqXHR responseText将字符串转换为JSON,jquery,ajax,jqxhr,Jquery,Ajax,Jqxhr,我有一些回应如下: [{ "id": null, "partId": 0, "name": "5e8c8c89-445e-4033-80db-014a00cc055e.jpg", "type": "image/png", "size": 2276489, "progress": "1.0", "url": "/Public/Upload/UploadHandler.ashx?id=5e

我有一些回应如下:

[{
        "id": null,
        "partId": 0,
        "name": "5e8c8c89-445e-4033-80db-014a00cc055e.jpg",
        "type": "image/png",
        "size": 2276489,
        "progress": "1.0",
        "url": "/Public/Upload/UploadHandler.ashx?id=5e8c8c89-445e-4033-80db-014a00cc055e.jpg",
        "thumbnail_url": null,
        "delete_url": "/Public/Upload/UploadHandler.ashx?id=5e8c8c89-445e-4033-80db-014a00cc055e.jpg",
        "delete_type": "DELETE",
        "error": null
    }
]
但我不能在我的完整功能中使用这些数据。我曾尝试使用$.parseJSON函数将其转换为JSON,但尽管我得到了一个对象,但我无法访问任何项目

var o = $.parseJSON(jqXHR.responseText);
console.log(o.partId); // returns undefined
有人能帮我吗

干杯,
r3plica

您的JSON响应在顶层有一个数组。您需要执行以下操作:

console.log(o[0].partId);

很可能是在请求完成之前访问了responseText,但是如果没有更多的上下文,我们无法判断。实际上很少需要直接使用responseText。JSON已经是一个字符串了。听起来更像是要将JSON字符串转换为Javascript对象。是否尝试过
o[0]。partId
?@KevinB我需要访问reponsext,因为我正在使用BlueImp Upload with MVC从我的UploadHandler返回一个ID。它上传到s3,所以我需要将我的Id和文件位置(etcthanks:)一起记录到数据库中,这是正确的。我知道这是一个数组,但没有想到使用[0]lol。愚蠢的我:)