我正在尝试从我的AJAX请求中选择JSON返回的Error
属性。这是JSON:
{
"Error": "Login",
"Message": "Er zijn onjuiste inloggegevens ingevoerd! Probeer het opnieuw!"
}
我在jQuery中尝试了以下内容:
$.ajax({
url: '/cp/login.php',
data: {
u: $u,
p: $p,
t: $t,
r: $r,
s: $s
},
type: 'post',
dateType: 'json',
success: function(data) {
alert(data.Error);
}
});
结果为undefined
。
答案 0 :(得分:0)
通常,您不想处理成功回调中的错误。在jQuery 3中还有一个弃用通知
jqXHR.success(),jqXHR.error()和jqXHR.complete()回调是 从jQuery 3.0开始删除。您可以使用jqXHR.done(),jqXHR.fail()和 相反,jqXHR.always()。
这意味着你应该像这样处理你的ajax调用
$.ajax({
url: '/cp/login.php',
data: {
u: $u,
p: $p,
t: $t,
r: $r,
s: $s
},
type: 'post',
dateType: 'json'
})
.done(function(data) {
// success
})
.fail(function(data) {
// error
console.log(data.Error);
})
.always(function() {
// complete
});
如果这不起作用,那么API构造得很糟糕,任何API都应该实现正确的响应代码。