从JSON中选择项目

时间:2016-07-16 19:34:45

标签: php jquery json

我正在尝试从我的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

1 个答案:

答案 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都应该实现正确的响应代码。