【问题标题】:Download file from click on image or file link using javascript but it's not work on image使用 javascript 通过单击图像或文件链接下载文件,但它不适用于图像
【发布时间】:2018-12-17 05:59:20
【问题描述】:

我使用这种方法下载文件而不在浏览器选项卡中显示文件路径它正在处理 docx 和 pdf 文件但是当我单击图像链接时它会显示我不想要的图像的实际路径所以你能帮忙吗请给我这个好吗?

函数下载文件12(文件) {

 var baseurl = jQuery("#baseurl").val();
var valFileDownloadPath = baseurl + 'assets/uploads/files/'+file;

window.open(valFileDownloadPath , '下载'); }

【问题讨论】:

  • 您是重定向路径还是获取内容然后将其拖回浏览器?
  • 我想在点击文件链接时下载特定文件。
  • 看,你没有展示完整的代码。那么您在我要问的baseurl + 'assets/uploads/files/'+file; 后面写了什么代码。您可能正在将调用重定向到另一个控制器操作,或者您要获取文件内容然后在同一个操作中返回文件的内容?
  • window.open 是一个弹窗命令,大多数浏览器都会屏蔽这个命令。如果要加载数据,请使用 ajax 方法 lihe es6 Fetch 或 jQuery Load

标签: javascript jquery


【解决方案1】:

如果您想在新标签中下载图像文件,您需要在服务器端添加标题Content-Disposition: attachment; filename="filename.jpg" 以告诉您的浏览器下载图像而不是在新标签中呈现它。 如果你只是想下载图片文件,试试<a href="yourUrl" download="imageFile">download</a>

【讨论】:

  • 我有多个文件,不仅是图像,而且我不希望用户在下载任何文件时在浏览器中显示文件路径。
  • 浏览器不会渲染具有不受支持的 mime 类型的文件,这就是为什么即使没有 Content-Disposition 标头也可以下载 docx 和 pdf 文件的原因
猜你喜欢
  • 1970-01-01
  • 2014-06-05
  • 1970-01-01
  • 1970-01-01
  • 2018-12-07
  • 2012-02-07
  • 2012-07-01
  • 2020-04-03
  • 1970-01-01
相关资源
最近更新 更多