문제

나는 약간의 jQuery를 사용하여 UI를보다 역동적/사용 가능하게 만드는 Stripes 앱에서 작업하고 있습니다.

오류 해상도를 설정하므로 오류가 발생하면 사용자가 error.jsp 페이지로 리디렉션됩니다.

그러나 jquery ajax 호출 중에 오류가 발생하면 Error.jsp 페이지로 리디렉션되는 대신 호출 결과가 대신 한 페이지에 HTML이 인쇄됩니다.

페이지에 인쇄하는 대신 예외가 발생하면 jQuery에게 리디렉션을 어떻게 말합니까?

불쾌한 ajax의 예 :

$.post("SendStatusEmail.action",
            {status: newstatus, id : id },
            function(data) {
                column.text(data);
                column.addClass("redfont");
                column.parent().fadeOut(3000, function(){column.parent().remove()});
도움이 되었습니까?

해결책

$(document).ajaxError(function(event, XMLHttpRequest, ajaxOptions, thrownError) {
    // redirect here.
}

Ajax 호출에 예외가있을 때 리디렉션되지 않는다고 덧붙여 야합니다. 대신 서버에 JSON 형식의 오류 설명을 반환하고 페이지에 표시합니다.

다른 팁

$ .post () 대신 $ .ajax ()를 사용하는 것은 어떻습니까? 보다 일반적인 $ .ajax ()는 오류가 발생한 경우 호출 할 수있는 오류 콜백을 제공합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top