jquery ajax appel synchrone beforeSend

J'ai une fonction appelée:

function callAjax(url, data) {
 $.ajax(
   {
     url: url, //same domain
     data: data,
     cache: false,
     async: false, //use sync results
     beforeSend: function() {
       //show loading indicator
     },
     success: function() {
       //remove loading indicator 
     }
   }
  );
}

Dans le code, je l'appelle "callAjax" X nombre de fois et je veux mettre à jour les données en mode synchrone. Il est fait comme prévu, mais un seul problème: le chargement de l'élément n'est pas afficher dans beforeSend fonction. Si je tourne async true, cela fonctionne, mais les mises à jour ne sont pas fait de façon synchrone.

J'ai essayé plusieurs choses sans succès. J'ai essayé de mettre l'indicateur de chargement avant l'appel ajax comme ceci:

function callAjax(url, data) {
  //show loading div

  $.ajax(
    {
      //same as above
    }
   );
}

Mais pour quelque raison il ne veut pas afficher l'indicateur de chargement. J'ai remarqué un comportement étrange lorsque j'ai mis une "alerte" dans le beforeSend et l'indicateur de chargement s'affiche dans ce cas, mais je préfère ne pas afficher une boîte de message.

Vous avez des idées?

source d'informationauteur Daniel