我正在尝试创建一个下载按钮,但文件没有下载?

时间:2017-04-20 12:06:42

标签: javascript node.js reactjs dom download

我正在创建具有请求服务器下载文件的点击监听器的下载按钮

代码点击监听器:

$sqlupdate = mysqli_query($connect, "UPDATE `Test_downtime`.`Downtime` SET `Num_of_downtime` = $numdowntime, `Last_downtime` = now() WHERE `Server_Name` = '$servername'" );
代码运行时

在服务器端

 downloadFileClick(event){
   $.ajax('/download', {data:{}}).done(function(data){

   }.bind(this));
 }

文件未在浏览器中下载。我检查了从服务器发送到客户端的响应发送文件内容,但它没有从浏览器下载。

1 个答案:

答案 0 :(得分:2)

您无法通过向该文件发出ajax请求来下载文件。浏览器会忽略这一点。您必须通过<a href="/download" download>打开文件,或者您可以从jQuery触发该文件:

var a = $("<a>");
a.attr("href", "/download");
a.attr("download", "img.png");  // this is important
a.appendTo("body");
a[0].click();
a.remove();

这应该正确下载浏览器图像。