我有一个AJAX调用,我可以在我的控制台中看到我收到了这个JSON:
{
"status": 400,
"code": 11,
"property": "validation",
"errorMessages": [
{
"type": "m",
"name": "2",
"description": "The value must be less than or equal to 10"
}
]
}
我试图像这样获取errorMessage的值,但没有运气:
console.log(data.errorMessages[0].description);
其中data是JSON对象。
如何获得此描述值?
答案 0 :(得分:0)
你可以这样做
opt = {
"status": 400,
"code": 11,
"property": "validation",
"errorMessages": [
{
"type": "m",
"name": "2",
"description": "The value must be less than or equal to 10"
}
]
}
console.log(opt.errorMessages[0].description);
这是fiddle
答案 1 :(得分:0)
我猜您遗失的内容是jQuery.parseJSON
,或者您可以dataType: 'json'
ajaxSetup
自动执行此操作(即将格式正确的JSON字符串转换为JavaScript对象)。当然,您只能为此特定的AJAX调用添加dataType: 'json'
。
例如:
$.ajax({
type: 'POST',
cache: false,
dataType: 'json',
url: <your URL>,
data: <your input>,
success: function(data, status, xhr) {
console.log(data);
},
error: function(jqXHR, textStatus, errorThrown) {
}
});
还要确保从中获得响应的服务器在标头中发送正确的MIME类型,即'Content-Type: application/json'