javascript - 下载文件后如何执行一些javascript?

标签 javascript jquery html loading pageload

我有一个包含文件链接的页面。单击链接时,我使用下面的代码显示加载消息:

$('#TerritoriesToExcelLink').click(function() {
    $('#TerritoriesToExcelLoading').show();
    window.location.href = $(this).attr('href');
});

我想在下载完文件并在浏览器中弹出保存对话框后隐藏消息。

我已经尝试添加一些在 ready() 上触发的代码,但它似乎会立即运行(大概是因为页面已经加载,即使文件没有加载)所以加载消息永远不会显示。

文件下载完成后如何隐藏加载消息?

最佳答案

让您的服务器发送您从客户端代码指定的随机 cookie,并在 HTTP header 中下载您的内容。轮询您的 Javascript 以检查是否存在 cookie。这应该会告诉您浏览器何时拥有您的文件。

关于javascript - 下载文件后如何执行一些javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14954121/

相关文章:

javascript - 一组 div 上的鼠标悬停无法正常工作

javascript - JQuery动画div从右到左平滑

javascript - 使用 AJAX 查找元素的文本

c# - DropShadowExtender 和 RoundedCornersExtender 不能很好地与 ModalPopupExtender 配合使用

html - 为什么 XPath contains(text() ,'substring' ) 没有按预期工作?

javascript - Angular 中有带验证的输入框时,需要点击两次才能将控制权转移到单选按钮

javascript - 如何在不使用下拉列表的情况下实现自动完成?

javascript - 在 var 名称中使用 FOR 的 i = x

javascript - jQuery UI 日期选择器不正确遵循yearRange

html - CSS IE7 背景