这个JS代码是否等待AJAX​​请求完成?

时间:2009-11-23 11:00:24

标签: javascript jquery

我想写下面的JS代码,但我不确定它是否会起作用 - 它会比下面更复杂,我希望在浪费大量时间之前得到别人的建议。 / p>

function ajax_request(array_element){

    $.get("process_txt.php", { path:  full_path }, 
          function (data){

          });
}
function bulk_upload(){

    //loop through array

    //Call ajax function on one element of array - ajax_request(array_element)

    //Does the loop wait for the ajax request to be completed to come

}

从上面开始,循环会等待AJAX​​请求还是继续?如果它继续,我怎么能让它等待?如果没有办法做到这一点,我会重新考虑我的逻辑吗?!

我感谢任何帮助。

2 个答案:

答案 0 :(得分:3)

由于默认情况下AJAX请求是异步的,因此循环不会等待。如果您需要在继续之前等待调用结果,则应使用AJAX请求的回调函数。我强烈建议 NOT 使请求同步,因为这将阻止客户端,直到请求完成。

答案 1 :(得分:0)

我认为您应该将“bulk_upload”功能拆分为另外两个。第一个函数执行ajax请求,第二个函数调用ajax的“回调”函数。

运气!