Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 元素插入在jquery AJAX期间没有反映出来_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 元素插入在jquery AJAX期间没有反映出来

Javascript 元素插入在jquery AJAX期间没有反映出来,javascript,jquery,ajax,Javascript,Jquery,Ajax,我正在尝试创建一个DIV,其中图像位于另一个DIV中,用于显示AJAX处理。发生的情况是,图像只有在AJAX调用之后才可见。我已经检查了DOM,插入发生在“beforeSend”中,但在AJAX调用后可见。下面是一段代码 options.beforeSend = function(jqXHR, settings){ $('#'+_divId).prepend(jQuery('<div/>', { class : 'ajax-progress' }).

我正在尝试创建一个DIV,其中图像位于另一个DIV中,用于显示AJAX处理。发生的情况是,图像只有在AJAX调用之后才可见。我已经检查了DOM,插入发生在“beforeSend”中,但在AJAX调用后可见。下面是一段代码

options.beforeSend = function(jqXHR, settings){ 
    $('#'+_divId).prepend(jQuery('<div/>', {
        class : 'ajax-progress'
    }).append(jQuery('<img/>').attr('src',"/images/ajax.gif")));
}

我不能在“ajaxStart”中这样做。

我知道原因了。它在属性为“async:false”的AJAX调用中不起作用


由于AJAX是同步的,DOM更新将暂停,直到调用完成。

如果此功能用于特定的页面和功能,那么为什么要使用beforeSend。是否可以在AJAX调用之前手动执行此前置和追加操作?通常beforeSend用于向请求添加额外的标题或其他信息。这不是特定于页面的,我们在beforeSend中做了一些额外的工作,这是一个新的。我试着用一种通用的方式来完成每一个屏幕和每一个ajax调用。
$('#'+_divId).prepend(
$('#imageDiv').detach());