Javascript 关于如何防止用户在单击“保存”按钮后关闭浏览器窗口(通过onbeforeunload)的建议?
关于如何在保存数据之前提示用户关闭窗口,我已经找到了许多解决方案,但在我的场景中,这一页保存了大量数据,速度很慢(大约需要30秒),这是在单击“保存”按钮之后。我们发现,用户正在单击“保存”按钮,然后在单击“保存”后导航或离开。根据浏览器的不同,发送到服务器的内容不一定会被保存(看看你的Chrome) 我选择了使用这个解决方案,并且几乎完成了我需要的工作,除了当我单击“保存”按钮时,仍然会提示我保存更改,因为我要离开页面。好像我需要关闭提示符,然后在延迟一段时间后再打开它。这可能吗Javascript 关于如何防止用户在单击“保存”按钮后关闭浏览器窗口(通过onbeforeunload)的建议?,javascript,jquery,onbeforeunload,Javascript,Jquery,Onbeforeunload,关于如何在保存数据之前提示用户关闭窗口,我已经找到了许多解决方案,但在我的场景中,这一页保存了大量数据,速度很慢(大约需要30秒),这是在单击“保存”按钮之后。我们发现,用户正在单击“保存”按钮,然后在单击“保存”后导航或离开。根据浏览器的不同,发送到服务器的内容不一定会被保存(看看你的Chrome) 我选择了使用这个解决方案,并且几乎完成了我需要的工作,除了当我单击“保存”按钮时,仍然会提示我保存更改,因为我要离开页面。好像我需要关闭提示符,然后在延迟一段时间后再打开它。这可能吗 wi
window.onbeforeunload = function() {
if ( Flag == 'Y' ) {
return "Changes made. Don't want to save?";
}
}
你为什么不试试“随用随存”的方法呢?。。。您可以在用户使用任何数据输入机制时发送小的快速请求,并将其存储在服务器上的临时文件中,因此当用户点击“保存”按钮或关闭浏览器窗口时,您只发送一个小的请求,足够快,以允许安全断开浏览器连接。然后,服务器只读取临时文件,并将其作为用户在单个操作中发送的文件进行处理。这可能不容易,但您将摆脱不少麻烦。src的上述代码来自您应该通过UI解决的问题。显示某种进度条或微调器以指示操作尚未完成。在UI中显示微调器并显示一条消息,说明不要关闭浏览器,可能需要1分钟或2分钟,保存完成后,通知用户我们已经在使用jQuery插件BlockUI,但是我们的用户不耐烦了,不管怎样都会关闭窗口。除了UI解决方案之外,还应该考虑减少节省时间(我知道,说起来容易做起来难)。您是如何保存数据的?也许你可以做一些优化。我也提出了这个解决方案,但是如果用户退出,那么客户端就不需要任何数据。他们对此非常坚决。英雄联盟