我有一个函数叫做:
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 } } ); }
在代码中,我调用“callAjax”X次,我想同步更新数据.它按预期完成,但有一个问题:加载项不会在beforeSend函数中显示.如果我将async设置为true,它可以正常工作,但更新不会同步完成.
我尝试了几件事情没有成功.我尝试将加载指示符放在ajax调用之前,如下所示:
function callAjax(url,data) { // show loading div $.ajax( { // same as above } ); }
但是由于某些原因,它不想显示加载指示器.我注意到一个奇怪的行为,当我把一个“警报”在beforeSend和加载指示符出现在这种情况下,但我不是弹出一个消息框.
有什么想法?