나는 이전에 related question에게 물었습니다. 그러나 지금 응답해야하는 질문은 약간의 특정 탄젠트가있는 것 같아서 새로운 질문을하는 것이 더 좋을 것이라고 생각했습니다.jquery .submit return false 항상 작동하지 않음
페이지의 모든 Ajax 호출이 성공적으로 반환 될 때까지 양식 제출을 방지하려고합니다.
나는 이것에 대한 간단한 테스트를했다. (호출이 시작될 때 카운터에 1을 더하고, 성공하면 1을 빼기). 카운터가 0에 도달 할 때까지
// can we submit yet?
$('#checkoutform').submit(function() {
if (ajaxcallcounter == 0) {
return true;
}
return false;
});
가 양식 제출을 방지하기 위해 (모든 호출이 완료)하지만 어떤 이유로이 100 % 효과가 보이지 않는다 :
나는 내가 할 수 있어야 보라.
이 붉은 청어하지만 통화가 맥 사파리를 사용하고 완료하기 전에 체크 아웃 관리 한 고객의 모든 보고서
(이것은 단지 비록 우연의 일치 일 수) 경우 나도 몰라 here 코드를 볼 수 있습니다. 배송 국가를 변경하여 일부 ajax 호출을 시작하십시오. 카운터가> 0 인 동안 오른쪽 하단의 제출 버튼을 사용 중지해야합니다.
답변을 찾을 수 없습니다. 나는 당신이 코드 전체에서'ajaxcallcounter'를 점차적으로 증가 시키거나 감소시키고 있다고 말할 것입니다. 대신 증분 및 감소 기능을 호출하는 것이 유용 할 수 있습니다. 그런 다음 몇 가지 쉬운 로깅을 수행하고 언제 호출되는지 확인할 수 있습니다. – user113716
안녕 패트릭, 거기에 많은 증분과 감소 때문에 전화가 많이 있습니다! :) 나는 그들이 정확한 시간에 전화를 받았다고 생각하지만 양식을 제출할 수 있습니다. – Ashley