0

这是我的 HTML 的一部分:

<input type="button" onclick="downloadFile()" value="Download">
<a href="http://i.imgur.com/CqIpg.jpg" id="fileLink">Link to file</a>

这是下载文件代码:

function downloadFile(){
 $.fileDownload($('#fileLink').attr('href'), {
   preparingMessageHtml: "We are preparing your report, please wait...",
   failMessageHtml: "There was a problem generating your report, please try again."
 });
 return false;
}

我正在使用 jQuery 的fileDownload 插件。当我点击按钮时,“我们正在准备您的报告,请稍候...”通知弹出。但它永远保持这种状态,并且文件不会下载。

为确保链接有效,我单击链接并在浏览器中打开文件。有什么我忘记注意的地方吗?

这是它的JSFiddle

4

1 回答 1

1

尝试对您的演示进行此更新:http: //jsfiddle.net/revive/zvxyv/14/

我已经更新了您的代码以包含点击功能并通过 jsfiddle 加载 JS 资产,加载到 Dom Ready

$(function() {
    $(document).on("click", ".button", function() {
        var href = $(this).next('a').prop('href');
        // alert to verify/check href value
        //alert(href);
        $.fileDownload(href, {
            preparingMessageHtml: "We are preparing your report, please wait...",
            failMessageHtml: "There was a problem generating your report, please try again."
        });
        return false;
    });
});

它现在可以工作了.. 显然您使用的 img URL 阻止了跨域 cookie,或者?

祝你好运

于 2015-06-24T13:59:56.117 回答