开始使用JQuery下载文件

Start downloading file using JQuery

本文关键字:下载 文件 JQuery 开始      更新时间:2023-09-26

我想在单击按钮时开始下载文件
我只有文件的路径
如何开始下载
这就是我迄今为止所尝试的:

$('#download_button').click(function(){
    var filepath = $(this).attr('data-filepath');
    var do = '<a href="'+ filepath +'" download="file">file</a>';
    $(body).append(do);
});

我做错了什么
我从不想重定向页面
如果安装在客户端机器上,是否在浏览器或下载文件的软件中开始下载

或者,您也可以设置top.location

$('#download_button').click(function(){
    var filepath = $(this).attr('data-filepath');
    top.location.href = filepath;
});

您不能强制使用JavaScript下载文件。

您可以使用location.href = "somefile.ext";,但是,如果服务器Content-Disposition: attachment作为其对该文件请求的响应标头之一,则只能下载

如果您想将文件下载到客户端,请执行以下操作:

$('#download_button').click(function(){
    var filepath = $(this).attr('data-filepath');
    location.href = filepath;
});

location.href将查找一个页面,但找不到任何内容,因此它将下载该文件。

您可以使用jQuery创建表单并使用submit函数。这不会更改地址栏中的URL。

$('#download_button').click(function(){
        var filepath = $(this).attr('data-filepath');
        var form = $('<form>').attr('action', filepath);
        form.submit();
});