1

jQuery JavaScript Library v1.4.2を使用しています

私はこのコードを使用しています

var urlToGetToken = 'http://test.com';
        $.getJSON(urlToGetToken, function (data) {
            document.getElementById("demo3").innerHTML = data.access_token;
        }).success(function () {
            alert("second success");
        })
            .error(function () {
            alert("error");
        })
            .complete(function () {
            alert("complete");
        });

Ajax リクエストが失敗した場合に備えて、demo3 にステータス コードとエラー メッセージを出力したいと思います。

.error()... の使用に疲れましたが、成功しませんでした。

何か案は?

4

3 に答える 3

4

Promises/Deferreds は Jquery 1.5 で導入されました - 1.4.2 で使用している構文がわかりません

「失敗」コールを $.getJson に戻すことはできません - 代わりに $.ajax を使用できます - これは間違いなく機能するはずです

失敗イベントをタップしたい場合

$.ajax({
  url: url,
  dataType: 'json',
  data: data,
  success: successCallback,
  error : failureCallback
}); 

var successCallback = function(data){
$("#demo3").innerHTML = data.access_token;
};

var failureCallback  = function(jqXHR, textStatus, errorThrown){
$("#demo3").innerHTML = "Your error message"; 
};
于 2012-12-21T12:10:35.097 に答える
2

$.getJSONエラーメッセージを見つけるためのajaxリクエストと同様に、これを使用します:

$(document).ajaxError(function(event, msg, settings){
  alert(msg);
});
于 2012-12-21T12:17:39.860 に答える
0

ドキュメントから:

jQuery.getJSON( url [, data] [, success(data, textStatus, jqXHR)] )

そう:

$.getJSON(urlToGetToken, function (data) {
    document.getElementById("demo3").innerHTML = textStatus;
}).success(function () {

結果を提供します。

于 2012-12-21T12:13:47.110 に答える