JS按顺序执行ajax

时间:2014-02-27 05:11:08

标签: javascript ajax

如何使用ajax按顺序控制JS执行?这是我的代码:

function forexample() {
  $(".bewait").css("display", "block");
  ajaxrequest();  // here is a ajax request method. 
                  // I also added "async: false" in the method.
  $(".bewait").css("display", "none");
}

当我运行forexample()时,它在Firefox中正常工作,但我发现chrome没有,看来chrome首先运行ajax方法,然后一起运行css控件js。

如何修复它以便在Chrome中正确运行?

2 个答案:

答案 0 :(得分:0)

您应该将$(".bewait").css("display", "none");添加到onComplete处理程序。例如:

$(".bewait").css("display", "block");

$.ajax({
            type : 'POST',
            url : url,
            async : false,
            data : postData,
            complete : function (){
                $(".bewait").css("display", "none");
            }
     });

答案 1 :(得分:0)

使用回调确保第二个css语句仅在收到响应后执行:

ajaxrequest({
    onResponse : function() {
        $(".bewait").css("display", "none");
    }
})

您可能也想要处理错误,但这应该足以开始了