헤르메스 LIFE

jQuery 강좌 | Tips > .ajax() 동기식으로 사용하는 방법 본문

JSP&JavaScript&HTML

jQuery 강좌 | Tips > .ajax() 동기식으로 사용하는 방법

헤르메스의날개 2016. 3. 16. 09:01
728x90


출처 : http://www.cmsfactory.net/node/11478


Ajax는 Asynchronous JavaScript and XML의 약자입니다. 이름에서도 알 수 있듯이 비동기식으로 데이터를 가져옵니다.

jQuery의 .ajax()도 마찬가지입니다. 데이터 요청을 해놓고 요청에 응답하는 순서대로 처리합니다.

비동기식이 여러모로 효율적이지만, 간혹 동기식 처리가 필요한 경우가 있습니다.

  • 데이터 처리를 요청한 순서대로 해야 하는 경우
  • .ajax()로 가져온 데이터를 전역 변수로 넘겨야 하는 경우

.ajax()를 동기식으로 처리하려면

async: false

를 추가하면 됩니다.

$.ajax ( {
  url: xxx,
  dataType: xxx,
  async: false,
  success: function( xxx ) {
    ......
  }
} );

단, 이렇게 동기식으로 사용하면 콘솔에 다음과 같은 메시지가 나옵니다.

Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check http://xhr.spec.whatwg.org/.
에러라기 보다는 알림 정도로 이해하면 된다고 합니다.








728x90