4 jquery
当用户以任何方式离开页面时,我需要发送一个帖子请求.到目前为止,这就是我所拥有的,但它不起作用:
$(window).unload(function(){
$.post("http://localhost/project/quizTime.php",{action:"updateTime",userID:userid,quizID:quizid,newTime:currentTime*1000,rand:Math.random()},function(time)
{
});
});
Run Code Online (Sandbox Code Playgroud)
通过用click函数替换window.unload来测试PHP代码.这完美地运行并根据需要更新所有内容,这意味着问题在于$(window).unload触发器.
您必须使用async选项设置为false的ajax方法,如下所示:
$.ajax({
type: 'POST',
async: false,
url: 'YOUR_URL',
data: 'YOUR_DATA'
});
Run Code Online (Sandbox Code Playgroud)
通过这种方式,浏览器在执行任何其他操作之前等待请求完成.