在窗口卸载之前调用jquery ajax函数的确切方法是什么?

时间:2011-03-28 17:52:55

标签: jquery ajax onbeforeunload onunload

我需要在窗口卸载之前调用jquery ajax()函数。在我的情况下,它是一个POST,我不关心返回结果,我只是想要更新数据库。

所以答案似乎是将函数绑定到unload事件,即使用jquery unload()函数,该函数进行ajax调用。另外,我知道你应该在调用中添加同步参数。换句话说,将async:false添加到jquery ajax()调用。

但是,我已经尝试了所有这些,它在IE8上不起作用!我已经多次测试了它,它根本不适用于IE8。适用于Firefox和Chrome。

更奇怪的是,在我关闭整个IE8应用程序后,似乎然后呼叫通过了!是否正在缓存?

所以其他人建议在使用jquery bind()之前绑定ajax。然而,对于这是否适用于所有浏览器似乎有一些混合的答案。

我还没有尝试过beforeunload,因为这似乎是“黑客”的做法。但是,如果它有效,那么只要它确实有用,我就不在乎。

1 个答案:

答案 0 :(得分:0)

你能否在页面的body标签中调用该函数?

<body onbeforeunload="funcName(param)">

每次页面卸载时都会调用你的函数,你不必担心绑定。