저는 아약스를 사용하는 초보자이며 항상 완전히 비동기라고 생각했습니다. 그러나 호출이 페이지 재로드 또는 페이지 변경 (예 : 하이퍼 링크 클릭)으로 중단 될 수 있음을 발견했습니다. 나는 아약스 호출이 시작될 때 브라우저가 나중에 무엇을 하든지 상관없이 실행된다는 인상을 받았다. 틀렸어?호출이 페이지로드에 의해 중단되었습니다.
이제 특정 문제에 대해 : 사용자가 질문에 답하는 온라인 테스트를 생각해보십시오 (텍스트 상자에 입력). 텍스트 상자에 포커스가 없으면 텍스트 상자의 값을 DB에 유지하는 ajax 호출이 트리거됩니다. 텍스트 상자간에 변경하면 잘 작동합니다. 그러나, 나는 또한 다른 페이지 (그것은 제출 버튼)에 게시 작업을 triggeres 제출 버튼이 있습니다. 내가 입력란에 무엇인가를 입력하고 나중에 버튼을 클릭하면 호출이 수행되지 않습니다. 또한 텍스트 상자에 입력하고 다른 곳을 클릭하면 (통화도 시작) 신속하게 제출 버튼을 클릭하면 전화도 걸리지 않습니다. 그것은 예상 된 행동인가?
첫 번째 장소에서 아약스를 사용하는 이유는 브라우저 충돌과 같이 예상치 못한 일이 발생하면 이미 입력 된 텍스트가 이미 저장되어 있으므로 값을 유지하는 것입니다.
내 사고 방식이 잘못 되었나요? 이 문제를 어떻게 해결할 것입니까?
감사합니다.
큰 질문입니다! –