0

我有一个功能,我需要在使用浏览器的“X”按钮关闭浏览器之前进行 ajax 调用以更新数据库值。我在关联文件的标题中使用了以下代码:

$(document).ready(function() {
     window.onbeforeunload = function(){
        $.ajax('<?php echo base_url();?>index.php/ajax/myfunction?a=4');
     }
});

关闭浏览器时,该功能有效,但未执行 ajax 调用..

解决方案是什么?

4

1 回答 1

2

根据我的经验,也许不是最漂亮的代码,但在超时线程中产生 ajax 调用可以很好地跨浏览器

$(window).bind("beforeunload", function (e) {
    setTimeout(function(){
        $.ajax({
            type: 'GET',
            async: false,
            url: "[YOUR API CALL]"
        });
    }, 0);
});

请注意,我上次使用它是在使用 Jquery 1.7 的项目中

于 2013-06-20T04:26:08.593 回答