Ajax 게시물의 JQuery 확인 성공
ajax $ .post의 성공 및 실패 기능을 어떻게 정의합니까?
문서는 여기에 있습니다 : http://docs.jquery.com/Ajax/jQuery.ajax
그러나 요약하자면 ajax 호출에는 많은 옵션이 필요합니다. 당신이 찾고있는 것은 오류와 성공입니다.
다음과 같이 호출합니다.
$.ajax({
url: 'mypage.html',
success: function(){
alert('success');
},
error: function(){
alert('failure');
}
});
인수없이 성공 및 오류 함수를 표시했지만 인수를받을 수 있습니다.
오류 함수는 XMLHttpRequest, textStatus 및 errorThrown의 세 가지 인수를 사용할 수 있습니다.
success 함수는 data와 textStatus의 두 가지 인수를 사용할 수 있습니다. 요청한 페이지는 데이터 인수에 있습니다.
실패 함수가 필요한 경우 $ .get 또는 $ .post 함수를 사용할 수 없습니다. $ .ajax 함수를 직접 호출해야합니다. "성공"및 "오류"콜백을 가질 수있는 옵션 객체를 전달합니다.
대신 :
$.post("/post/url.php", parameters, successFunction);
이것을 사용합니다.
$.ajax({
url: "/post/url.php",
type: "POST",
data: parameters,
success: successFunction,
error: errorFunction
});
사용 가능한 다른 옵션도 많이 있습니다. 설명서 에는 사용 가능한 모든 옵션이 나열되어 있습니다.
jQuery 1.8 이상을 사용하는 경우 다음을 사용해야합니다.
var request = $.ajax({
type: 'POST',
url: 'mmm.php',
data: { abc: "abcdefghijklmnopqrstuvwxyz" } })
.done(function(data) { alert("success"+data.slice(0, 100)); })
.fail(function() { alert("error"); })
.always(function() { alert("complete"); });
@hitautodestruct가 언급 한대로 문서를 확인하십시오.
왜 그들이 jquery 자체에서 제공하지 않았는지 궁금해서 jquery 파일을 몇 가지 변경했습니다. 여기 변경된 코드 블록이 있습니다.
원래 코드 블록 :
post: function( url, data, callback, type ) {
// shift arguments if data argument was omited
if ( jQuery.isFunction( data ) ) {
type = type || callback;
callback = data;
data = {};
}
return jQuery.ajax({
type: "POST",
url: url,
data: data,
success: callback,
dataType: type
});
변경된 코드 블록 :
post: function (url, data, callback, failcallback, type) {
if (type === undefined || type === null) {
if (!jQuery.isFunction(failcallback)) {
type=failcallback
}
else if (!jQuery.isFunction(callback)) {
type = callback
}
}
if (jQuery.isFunction(data) && jQuery.isFunction(callback)) {
failcallback = callback;
}
// shift arguments if data argument was omited
if (jQuery.isFunction(data)) {
type = type || callback;
callback = data;
data = {};
}
return jQuery.ajax({
type: "POST",
url: url,
data: data,
success: callback,
error:failcallback,
dataType: type
});
},
이것은 jquery의 $ .Post에서 오류를 잡으려는 사람에게 도움이 될 것입니다.
업데이트 됨 : 또는이를 수행하는 다른 방법이 있습니다.
$.post(url,{},function(res){
//To do write if call is successful
}).error(function(p1,p2,p3){
//To do Write if call is failed
});
이 스타일도 가능합니다.
$.get("mypage.html")
.done(function(result){
alert("done. read "+result.length+" characters.");
})
.fail(function(jqXHR, textStatus, errorThrown){
alert("fail. status: "+textStatus);
})
참고 URL : https://stackoverflow.com/questions/555315/jquery-checking-success-of-ajax-post
'Programing' 카테고리의 다른 글
.NET / C #의 사이트에서 이미지 다운로드 (0) | 2020.11.26 |
---|---|
확장 가능한 목록보기 그룹 아이콘 표시기를 오른쪽으로 이동 (0) | 2020.11.26 |
자바의 희소 행렬 / 배열 (0) | 2020.11.25 |
CVS에서 Git으로의 마이그레이션 도구가 있습니까? (0) | 2020.11.25 |
Java 게임에서 가비지 수집 지연을 방지하려면 어떻게해야합니까? (0) | 2020.11.25 |