jquery ajax.setasync,jQuery Ajax:如何等待* async *请求成功

你做错了:你不想强迫用户最多停留在页面上超过几秒钟,以便从你的应用程序获得服务。

相反,使用一个小部件来定期查询状态页面(当然是ajax)并在作业完成时显示一条消息。

(什么样的excel文件需要7分钟生成?数据库转储?)

编辑:

不同的浏览器在长ajax请求时的行为会有所不同,因此即使用户愿意,也不要依赖它们永远等待。如果您要求生成报告并下载报告,您的应用程序将更加强大。

这可以让你知道我在说什么:

create_my_excel_file.php:

$_SESSION['excel_status']='generating';

create_the_excel_file();

$_SESSION['excel_status']='finished';

check_status.php:

echo $_SESSION['excel_status'];

user_interface.php:

function initiateRequest(){

$.ajax('create_my_excel_file.php');

setInterval('checkForCompletion()', 5000);

}

function checkForCompletion(){

$.get('check_status.php', function(data){

if('finished'==data){

alert('Completed! Download the file now.');

location.href='file_download.php';

}

});

}

Generate the file

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值