一般而言,用a标签链向图片资源的话,会在浏览器上打开图片,而不是下载图片。
js中document.execCommand这个方法我已经试过了,实现不了。恳请解决方案。
你可以这样实现,让a标签的url指向一个页面,并且以传入了这个图片的名称,比如
<a href="new.aspx?pic=1.jpg">pic</a>
后台返回这个页面的时候,动态的将1.JPG添加到new.aspx中
是不是在页面里面还要写代码?
@大稳·杨: 是,读取图片,返回文件流
@朝曦: 我这个不是跳转页面,是前端调我接口。能在接口实现吗?
@大稳·杨: 如果前端调用异步加载图片我没这么搞过。
我以前用过的端调异步加载图片的方式和步骤
1、前端调用服务器端接口
2、服务器端读取pic文件流,将该流的内容转化成base64编码。
3、服务器端生成前端页面可以用的字符串。
4、服务器返回生产的数据
5、前端将返回的数据复制给img标签的 src属性
@大稳·杨:
pic转化base64的实现方式和base64的格式?
http://www.atool.org/img2base64.php 打开这个看看,这个工具可以将图片序列化成base64字符并且是img标签可以用的
@朝曦: 可能是我表述的不准确。我描述一下我的问题:前台链接地址是图片地址,点击链接就可以下载,而不是打开新标签查看图片,这个应该怎么解决?
@大稳·杨: 这个我之前没做过,不过网上一大堆这样的代码,你可以试一试
比如这个 http://www.jb51.net/article/39921.htm
@朝曦: 好的,谢谢
1.将a标签的链接地址指向一个页面
2.在页面里面提供页面的下载,而不是显示,用如下代码
Response.Clear();
Response.AddHeader("content-disposition", "attachment;filename=user-icon.png");
Response.ContentType = "image/png";
Response.WriteFile("user-icon.png");
这里的user-icon.png 可以替换我为你自己的文件
您好,我现在遇到了同样的问题,请问你怎么实现的?