我在制作ajax请求时遇到麻烦,等待加载php脚本,该脚本在chrome中工作但在两种情况下都不是IE。
按下按钮,脚本应该触发php脚本等待它完成然后显示警告说它已经完成但在IE中警报框显示得太快而脚本永远不会运行。它按照预期在chrome中工作。
这是尝试1
function reloadCalls(){
$('#reload').prop('disabled', true);
$('.ajax-progress-throbber').show();
$.ajax({
url: '/kpi/technet_proj/cron/proj_cron.php',
success: function(r){
alert('Calls Loaded');
location.reload();
},
error: function(r){
alert('Calls not loaded');
}
});
}
这是尝试2
function reloadCalls(){
$('#reload').prop('disabled', true);
$('.ajax-progress-throbber').show();
$.ajax({
url: '/kpi/technet_proj/cron/proj_cron.php',
success: function(){
alerts();
},
error: function(){
alert('Calls not loaded');
}
});
}
function alerts(){
alert('Calls Loaded');
location.reload();
}
我还尝试添加async:false
,它可以完成某些工作,但在脚本完成之前,它不显示throbber并阻塞浏览器。
任何帮助将不胜感激
答案 0 :(得分:1)
我解决了问题是将cache: false
添加到ajax请求中。