jQuery ajax 오류 해상도
-
06-07-2019 - |
문제
나는 약간의 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 ()는 오류가 발생한 경우 호출 할 수있는 오류 콜백을 제공합니다.
제휴하지 않습니다 StackOverflow