gpt4 book ai didi

javascript - 下载附件后 onbeforeunload 不起作用

转载 作者:行者123 更新时间:2023-11-28 09:27:39 24 4
gpt4 key购买 nike

我有一个jsp页面home.jsp,它分为两个框架标题和内容。在我的内容框架中,我有一个调用这样的 servlet 的链接

<a href="downloadAttach">download</a>

JavaScript 函数 dowloadAttach 有以下行:

window.location="RetrieveFile.display";

RetrieveFile 是一个 servlet,它从共享位置获取文档并将其写入输出流,以便我可以选择保存/取消/打开附件

此外,内容框架中的所有页面都有以下代码行,以确保该页面不会在浏览器中缓存:

window.onbeforeunload=function(){window.location.replace("<%= request.getcontextPath()%>/home.jsp")}

此外,我的 home.jsp 中有以下脚本,以确保每当卸载 home.jsp 时都会显示警告消息。脚本是这样的:

window.onbeforeunload=function(){return "sure you want to go away"};

现在假设我在google,然后转到home.jsp,然后单击下载附件链接。附件已正确下载。之后,我在 jsp 上执行任何导致页面刷新的操作,例如提交表单或关闭表单,然后按浏览器返回,我的 home.jsp 卸载,我被带到 google,并且弹出消息不会显示。如果我执行完全相同的步骤并刷新或关闭浏览器,则会出现该消息。我还尝试在 servlet 中设置 header 以进行缓存控制,但没有任何区别。我使用的是ie8

最佳答案

我发现这个 Jquery 适用于我的类似问题:

$(window).bind('beforeunload', function() { 
return "sure you want to go away";
});

关于javascript - 下载附件后 onbeforeunload 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14128716/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com