jquery - 如何从Chrome的window.onunload进行ajax同步调用?

标签 jquery ajax google-chrome synchronous onunload

我正在尝试对 window.onunload 进行 jquery .ajax 同步调用。 FF 和 IE 可以运行,但 Chrome 不行。我做了一些测试,Chrome 似乎终止了窗口而不等待响应。

这是我的代码:

window.onunload = function() {
    $.ajax({
        url: "/someurl",
        async: false,
        data: ({ somedata: "test" }),
        success: function(){ return true; },
        error: function(){ alert('got some error'); }
    });
}

请注意,我使用 window.onbeforeunload 显示警告消息,然后在用户离开页面时触发 window.unload。

最佳答案

使用onbeforeunload而不是onunload,这样应该可以解决问题。您需要将这两个事件包装到一个操作中。 onunload 在 Chrome 中不会触发。

关于jquery - 如何从Chrome的window.onunload进行ajax同步调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7317956/

相关文章:

php - 多选复选框显示表记录

javascript - jQuery 如何创建一个仅显示表单数组值的变量

php - 尝试从 formData 上传大文件

javascript - 禁用页面上的所有按钮

Javascript:让用户选择像 Firebug 这样的 HTML 元素?

javascript - HTML 表格加载完成后调用 Javascript 函数

javascript - tablesorter 小部件过滤任何匹配项。如何只搜索所有列(删除对单个列的搜索)

javascript - 在 knockout 中传递 "event"

google-chrome - devtools 时间中的空是什么意思?

javascript - 检查元素继承了哪些属性