加载URL和下载文件?

时间:2016-05-11 09:58:29

标签: jquery ajax download

我目前在我的服务器上有一个页面,其中包含允许我从服务器上的特定文件夹下载文件的链接。

链接如下:

<a href='file.php?file=$fileName'>FILE</a>

当我点击链接时,文件由file.php读取然后下载。 file.php与此类似:

header('Content-Type: application/zip');
header('Content-disposition: attachment; filename='.$file.'.zip');
header('Content-Length: ' . filesize($tmp));

ob_flush(); flush();
while(!feof($fd)) {
    $buffer = fread($fd, 2048);
    echo $buffer;
    ob_flush(); flush();
}

这一切都运行正常,但由于file.php在下载之前压缩文件,因此会稍有延迟。

我希望使用Jquery创建一个叠加层来显示&#39;请等待&#39;,运行file.php,然后在下载开始时关闭叠加层。

$(".file").click(function(){
    var file = $(this).data("id");
    jQuery.colorbox({html:"<p>PLEASE WAIT</p>"});
    $.ajax({ 
        load: 'file.php?file=' + file 
    }); 
});

这显示叠加但文件永远不会下载。无论如何,我可以调用file.php,它就像正常点击一样运行,以便下载文件?

由于

0 个答案:

没有答案