概要
Ajax は、皆さんも知っている通り、基本的に非同期で通信します。
※ そもそも Ajax とは Asynchronous Javascript And XML の略です。
なので、データ通信や処理をしている間に、同時に他の動作や処理をすることができるため、
不要なローディングを少なくし、より自由にページを構成することができます。
でも場合によっては、Ajax を同期で通信しなければならない場合もあるので、
今回は、「AJAX の同期通信」について説明します!
非同期
まずは非同期通信のサンプルです。
sample.js
$.ajax({
  type: 'POST',
  url: 'test.php',
  data: "name=lee",
  success: function(data) {
      if(data != null) {
          // Do somothing.
      }
  }
});
doAnything();※ここで doAnything()は、上の Ajax の結果と関係なく、必ず実行されます。
同期
sample.js
$.ajax({
  type: 'POST',
  url: 'test.php',
  data: "name=lee",
  async : false,   // ← asyncをfalseに設定する
  success: function(data) {
      if(data != null) {
          // Do somothing.
      }
  }
});
doAnything();async は、デフォルトが true ですが、上のソースのように false に設定すれば、同期で通信します。
以上!