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。愚蠢的我:)