programing

jQuery .get error response function?

closeapi 2023. 10. 3. 09:21
반응형

jQuery .get error response function?

Thanks to StackOverflow, I managed to get the following code working perfectly, but I have a follow up question.

$.get('http://example.com/page/2/', function(data){ 
  $(data).find('#reviews .card').appendTo('#reviews');
});

This code above enabled my site to fetch a second page of articles with a Load More button in WordPress. However when the site runs out of pages/results, I'm running into a small issue. The load more button remains in place. It will keep trying to fetch data even if no pages are remaining.

다음과 같은 경우 시각적 응답을 표시할 수 있도록 이 명령을 조정하려면 어떻게 해야 합니까?.get요청이 실패하거나 (404) 페이지를 찾을 수 없습니까?

만약 누군가가 나를 도와줄 수 있다면 간단한 예를 들어줄 수 있다면, 심지어는alert("woops!");정말 멋질 것 같네요!

Thanks!

$.get는 오류 처리기를 설정할 수 있는 기회를 제공하지 않습니다.대신 하위 레벨 기능을 사용해야 합니다.

$.ajax({
    url: 'http://example.com/page/2/',
    type: 'GET',
    success: function(data){ 
        $(data).find('#reviews .card').appendTo('#reviews');
    },
    error: function(data) {
        alert('woops!'); //or whatever
    }
});

Edit March '10

jQuery 1.5의 새 개체를 사용하면 호출 후 오류 처리기를 설정할 수 있습니다.$.get:

$.get('http://example.com/page/2/', function(data){ 
    $(data).find('#reviews .card').appendTo('#reviews');
}).fail(function() {
    alert('woops'); // or whatever
});

If you want a generic error you can setup all $.ajax() (which $.get() uses underneath) requests jQuery makes to display an error using $.ajaxSetup(), for example:

$.ajaxSetup({
  error: function(xhr, status, error) {
    alert("An AJAX error occured: " + status + "\nError: " + error);
  }
});

AJAX를 호출하기 전에 한 번만 실행하면 됩니다(현재 코드는 변경하지 않고 어딘가에 이 코드를 붙입니다).이것은 다음을 설정합니다.error전체 통화를 하고 지정한 경우 위의 핸들러/기능을 기본값으로 설정하는 옵션error핸들러라면 당신이 가지고 있던 것이 위의 것을 무시할 것입니다.

You can get detail error by using responseText property.

$.ajaxSetup({
error: function(xhr, status, error) {
alert("An AJAX error occured: " + status + "\nError: " + error + "\nError detail: " + xhr.responseText);
     } 
    });

체인가능.fail()오류 응답에 대한 콜백입니다.

$.get('http://example.com/page/2/', function(data){ 
   $(data).find('#reviews .card').appendTo('#reviews');
})
.fail(function() {
  //Error logic
})

ReferenceURL : https://stackoverflow.com/questions/4062317/jquery-get-error-response-function

반응형