jQuery에서 .fail로 전송되는 매개 변수는 무엇입니까?


107

$.ajax실패 할 때 세 매개 변수의 이름이 무엇인지에 대한 문서를 찾을 수 없습니다 .

지금은 다음을 사용하고 있습니다.

.fail(function(A, B, C) {

2
error콜백에 전달되는 것과 동일합니다 jqXHR, textStatus, errorThrown.
Felix Kling 2012 년

답변:


93

에 따르면 http://api.jquery.com/jQuery.ajax/fail 콜백은 점점되어야합니다 :

jqXHR, textStatus, errorThrown

와 동일 error하지만 error더 이상 사용되지 않습니다.

지원 중단 알림 : jqXHR.success (), jqXHR.error () 및 jqXHR.complete () 콜백은 jQuery 1.8에서 더 이상 사용되지 않습니다. 최종 제거를 위해 코드를 준비하려면 대신 jqXHR.done (), jqXHR.fail () 및 jqXHR.always ()를 사용하십시오.


오, 몰랐어요. 문서를 공유해 주셔서 감사합니다. jQuery XHR 콜백이 마침내 Deferreds와 일치하게되어 기쁩니다.
Michael Mior

2
아,하지만 ajaxError 메소드에는 jqXHR, ajaxSettings, thrownError 이벤트가 있습니다.
Phillip Senn 2012 년

그것들은 모두 동일한 인수를 전달받는 동일한 콜백이며 용도와 컨텍스트가 다릅니다.
nathanjosiah

6
실패 콜백이이 3 개의 인수를 얻는다는 것은 어디에 있습니까? 또한 전체 설정 매개 변수에 대해서도 설명합니다. 예를 들어의 인수가에 complete전달 된 인수와 다릅니다 done.

5
@Tom, 나는 당신에게 응답하기가 늦었다는 것을 알고 있지만 여기에 명시되어 있습니다 : api.jquery.com/jQuery.ajax/#jqXHR ( jqXHR.fail(function( jqXHR, textStatus, errorThrown ) {});)
nathanjosiah

27

다음은 동일한 문제를 찾은 후의 예입니다.

this.GetOrderList = function (customerId) {
    var self = this;
    $.post('MySuperServer.aspx', { customerId: customerId })
    .done(function (dataStr) {
        var orderList = jQuery.parseJSON(dataStr);
        self.process(orderList);
    })
    .fail(function (jqXHR, textStatus, error) {
        console.log("Post error: " + error);
    });
}

디버깅하는 동안 다음이 있습니다.

  • jqXHR 은 JS 객체입니다.
  • textStatus 는 "오류"입니다.
  • 오류 는 "내부 서버 오류"이며 서버에서 보낸 오류 메시지입니다.

1
예, 그들이 textStatus라는 단어를 사용하여 암시하려는 것은 이것이 상태 변수이고 텍스트 형식이라는 것입니다. jQuery 객체 인 jqXHR과 비교.
Phillip Senn
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.