2013-10-29 207 views
7

我想单击链接开始下载图片。强制浏览器使用jquery点击链接下载图片

<a id="downloadImage" href="imagepath">Click here to download</a> 

我知道我们可以使用HTML5(Force a browser to save file as after clicking link)的下载属性,但我不希望使用它,因为它不会在旧版本的浏览器来工作。 我在这里试过了这个方法: Download File Using Javascript/jQuery 但它打开了iframe中的图像。

任何人都可以帮助我强制浏览器下载使用jQuery的链接的图像onclick?

+0

我觉得* *这可以从服务器使用的内容处置HTTP标头得到解决。你在使用什么服务器端技术? –

+0

可能的重复[有没有办法强制用户从href链接下载文件而不是在浏览器窗口中打开它?](http://stackoverflow.com/questions/3841578/is-there-a - 用户下载文件 - 从一个href链接 - 而不是) –

+0

@NikosParaskevopoulos我想只用客户端脚本下载这个...只是我们正在使用Asp.Net – Maninder

回答

7

据我所知,没有针对此问题的客户端跨浏览器解决方案(使用jQuery或任何其他UI工具包无关紧要)。您需要什么才能触发浏览器下载文件做的是一些HTTP头添加到服务器响应:

Content-Type: application/octet-stream 
Content-Disposition: attachment; filename=image.jpg 

This后也可以对你有所帮助。

+0

我们如何在asp.net中做到这一点? – Maninder

+0

@Maninder为asp.net添加标题的官方文档:http://msdn.microsoft.com/en-us/library/ms524327(v=vs.90).aspx – Vadim

+0

http://css-tricks.com/片段/ htaccess的/力的文件到下载未打开,在浏览器/ – honzajde

5

可以使用下载属性,而不是跨浏览器完全支持,您可以使用 modernizr支持/备用不支持的浏览器。

对于支持的浏览器,检查http://caniuse.com/#feat=download

<a href="/path/to/image.jpg" title="ImageName" download="ImageName" > 
    <img src="/path/to/image.jpg" alt="ImageName"> 
</a> 
相关问题