Javascript ajax进度加载无法正常工作
我现在使用的是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) {
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$.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();写入成功函数