我正在创建具有请求服务器下载文件的点击监听器的下载按钮
代码点击监听器:
$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));
}
文件未在浏览器中下载。我检查了从服务器发送到客户端的响应发送文件内容,但它没有从浏览器下载。
答案 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();
这应该正确下载浏览器图像。