Javascript ajax进度加载无法正常工作

Javascript ajax进度加载无法正常工作,javascript,jquery,ajax,Javascript,Jquery,Ajax,我现在使用的是javascript,我试图在ajax启动时显示指示器图标,并在它完成时隐藏它,下面是我的代码: CSS: div.ajax-progress { //some setting and url } <body> <div class="ajax-progress"></div> </body> Javascript: $('#fileToUpload').on('change', function(e) {

我现在使用的是javascript,我试图在ajax启动时显示指示器图标,并在它完成时隐藏它,下面是我的代码:

CSS:
 div.ajax-progress {
      //some setting and url
}
<body>
   <div class="ajax-progress"></div>
</body>
Javascript:

$('#fileToUpload').on('change', function(e) {

            var file = e.target.files[0];
            var formData = new FormData($('form')[0]);
            imageId = cornerstoneWADOImageLoader.fileManager.add(file);


            $.ajax({
            url: 'loadfile.php',
            type: 'POST',
            data: formData,
            async: false,
            dataType: 'json',
            timeout : 60000,
            beforeSend :function(){
                $(".ajax-progress").show();
            },
            success: function (html) {}
           $(".ajax-progress").hide();
             //doing something}
        });
    });
CSS:
div.ajax-progress{
//一些设置和url
}
Javascript:
$('#fileToUpload')。关于('change',函数(e){
var file=e.target.files[0];
var formData=新的formData($('form')[0]);
imageId=cornerstoneWADOImageLoader.fileManager.add(文件);
$.ajax({
url:'loadfile.php',
键入:“POST”,
数据:formData,
async:false,
数据类型:“json”,
超时:60000,
beforeSend:function(){
$(“.ajax progress”).show();
},
成功:函数(html){}
$(“.ajax progress”).hide();
//做某事}
});
});

但什么都没发生,知道吗?谢谢

如果您将
$(“.ajax progress”).show()放在$.ajax({})之前的code>并将其隐藏在成功中。

我不知道这与代码中的内容是否相同,但您注释掉了成功结束括号}


您还可以使用console.log()或alert()查看代码中发生了什么。

尝试按如下方式重写ajax:

$.ajax({
   url: 'loadfile.php',
   type: 'POST',
   data: formData,
   async: false,
   dataType: 'json',
   timeout : 60000,
   beforeSend :function(){
      //do something
   },
   success: function (html) {
      //doing something
   }
});

$(document).ajaxStart(function() {
    $(".ajax-progress").show();
});

$(document).ajaxStop(function() {
    $(".ajax-progress").hide();
});

这将在应用程序中的所有ajax请求中显示和隐藏
$(“.ajax progress”)

这是输入错误,beforSend中的控制台实际运行,但不会显示,感谢您的响应$(“.ajax progress”)。hide();写入成功函数