2016-07-16 9 views
0

私のAJAXリクエストから返されたJSONをErrorというプロパティで選択しようとしています。これはJSONです:JSONからアイテムを選択する

{ 
    "Error": "Login", 
    "Message": "Er zijn onjuiste inloggegevens ingevoerd! Probeer het opnieuw!" 
} 

私はjQueryの中で次のことを試してみました:

undefinedになり
$.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); 
    } 
}); 

+0

データが入力されていますか? –

+0

はい、 ' – Chris

+3

使用'はconsole.log(データ)上記JSONでdata'結果; '私はそれはそれかもしれないと思う受け取られているもの – Ahmad

答えて

0

通常、成功のコールバックでエラーを処理したくありません。そこjQueryの3

jqXHR.success()、jqXHR.error()で非推奨通知でもあり、そしてjqXHR.complete()コールバックはjQueryの3.0のように除去 です。代わりにjqXHR.done()、jqXHR.fail()、および jqXHR.always()を使用できます。

これは、これは、APIがひどく構築され動作しません任意のAPIが適切な応答コードを実装する必要がある場合は、この

$.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 
    }); 

のようなあなたのAJAX呼び出しを処理する必要がありますを意味します。

+0

あなたはその質問に答えようとしていますか? – Ahmad

+0

@Ahmadはい、エラーが返された場合、正常な操作ではなかったので、成功はdata.Errorをフェッチできません。私の返信の最初の単語に注意してください "通常、成功のコールバックでエラーを処理したくない" –

関連する問題