이제 Ajax 요청에서 async:false와 async:true의 차이점을 자세히 설명하는 기사를 가져오겠습니다. 이제 그것을 여러분과 공유하고 모든 사람에게 참고 자료로 제공하겠습니다.
예제는 다음과 같습니다.
function test(){ var temp="00"; $.ajax({ async: false, type : "GET", url : 'userL_checkPhone.do', complete: function(msg){ alert('complete'); }, success : function(data) { alert('success'); temp=data; temp="aa"; } }); alert(temp); }
UserLAction checkPhone() method
public void checkPhone() throws IOException { this.getServletResponse().setContentType("text/html; charset=UTF-8"); this.getServletResponse().setHeader("Cache-Control", "no-cache"); PrintWriter out = this.getServletResponse().getWriter(); out.print("true"); }
async: false, (기본값은 true);
async: false가 동기화되는 경우, 이 테스트에서는() method Ajax 요청은 userL_checkPhone.do 실행이 완료된 후에만 전체 브라우저를 잠급니다.
따라서 실행 결과는 첫 번째입니다. 하지만 문제가 있습니다. test()의 ajax 요청과 후속 작업이 비동기적으로 실행되므로 userL_checkPhone.do가 아직 실행되지 않은 경우 ajax 요청 이후의 작업이 실행되었을 수 있으므로
결과가 경고입니다. ('성공'); 경고('완료'); 경고("00");
이렇게 하면 경고("성공")와 경고(임시)가 거의 동시에 실행되는 것을 알 수 있습니다. 초기화된 값 temp = "00", 대신 temp="aa";
위 내용은 제가 모든 사람을 위해 정리한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다.
관련 기사:
Ajax는 mysql 데이터와 상호 작용하여 메시지 보드 기능을 생성합니다.Ajax 동기화 및 비동기 문제에 대한 간략한 분석 및 솔루션
json 문자열 및 json 배열에 응답하는 ajax 인스턴스(그래픽 튜토리얼)
위 내용은 Ajax 요청에서 async:false와 async:true의 차이점 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!