2012-10-08 3 views
2

아마 최선을 보낸 후 : 내 코드에서 아약스 전화를 가지고 있고 그것이 보낸 후 즉시 호출을 취소 할jQuery를 아약스 중단 요청이 질문 개정

합니다. 기본적으로 응답을 기다리지 않고 클라이언트로부터 전체 요청을 전송하기 만하면됩니다. 누구든지이 작업을 수행하는 방법에 대한 아이디어를 제공 할 수 있습니까?

Chrome에서 다음을 시도했지만 요청이 실제로 전송 된 것 같지 않습니다 (서버 쪽에서받은 요청을 로깅합니다). 기본적으로

는 :

var sendRequest = jQuery.ajax({ 
    url: '/awesomeness.txt', 
    dataType : 'json', 
    timeout: 2000, 
    cache: false, 
    success: function(result) {} 
}); 

sendRequest.abort(); 

또한 하나의 타임 아웃을 설정하는 시도,하지만 요청이 전송되지 않습니다 새 브라우저에서 페이지를로드 변태 경우 (필자는 페이지를 새로 고침 경우가 전송됩니다).

답변

3

으로 쉽게대로 :

jQuery.ajax({ 
    url: '/awesomeness.txt', 
    dataType : 'json', 
    timeout: 2000, 
    cache: false, 
    afterSend: function() {/*run awesome code*/} 
    success: function(result) {} 
}); 

// call whatever you want after send 
afterSend(); 

그래서 그것에 대해 jquery.ajax 이벤트에 내장 없음이 있지만 그냥 그냥 코드 블록 후 YOUR_COOL_FUNCTION 전화를 잘 $.ajax();

-1

후 함수를 호출 할 수 있습니다.

이것은 ajax 요청이 콜백을 사용하므로 수행 된 요청을 위해 현재 실행을 차단하지 않기 때문에 작동하지만 요청을 한 다음 코드로 이동하므로 모든 코드를 넣는 것만 큼 간단합니다. 이 AJAX 호출 후 원하는 코드 블록.