博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jq实现图片下载功能
阅读量:5016 次
发布时间:2019-06-12

本文共 1710 字,大约阅读时间需要 5 分钟。

很多时候网站中都会有下载功能,一般的下载直接指定a链接然后直接就能下载了,但是有些文件比较特殊,如图片,指定a链接的时候会直接在浏览器中打开图片,这并不是我们想要的,有人说在a链接中加个download属性,其实这个方法在低版本的google浏览器中是可以实现的,但是在高版本的浏览器中是没法实现的。说了这么多具体怎么将图片作为附件下载下来,请看下面的代码

 

function downloadImage(path,imgName) {            var _OBJECT_URL;            var request = new XMLHttpRequest();            request.addEventListener('readystatechange', function (e) {                if (request.readyState == 4) {                    _OBJECT_URL = URL.createObjectURL(request.response);                    var $a = $("").attr("href", _OBJECT_URL).attr("download", imgName);                    $a[0].click();                }            });            request.responseType = 'blob';            request.open('get', path);            request.send();        }

第一个参数为图片的地址,第二个参数为下载后图片的名称

 

但以上方法只限于下载图片,如果需要下载其它附件如pdf,txt等需要使用以下方法(我用的是webservice)

[WebMethod(Description = "下载文件")]        public void GetDldFile(string url)        {            FileInfo file = new FileInfo(HttpRuntime.AppDomainAppPath + url);            if (file.Exists)            {                HttpContext.Current.Response.ClearContent();                HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=" + file.Name);                HttpContext.Current.Response.AddHeader("Content-Length", file.Length.ToString());                HttpContext.Current.Response.ContentType = "text/plain";                HttpContext.Current.Response.TransmitFile(file.FullName);                HttpContext.Current.Response.End();            }        }

前台js这样写

var url = "http://192.168.0.1/PatrolStatisticsForRService.asmx/GetDldFile";window.open(encodeURI(url + '?url=123.txt'));

 

转载于:https://www.cnblogs.com/dushaojun/p/11364370.html

你可能感兴趣的文章
SEO搜索引擎
查看>>
关于本地使用tomcat部署web应用,浏览器自动跳转为https的问题
查看>>
一、Text To Speech
查看>>
Java读取并下载网络文件
查看>>
github上构建自己的个人网站
查看>>
在word中粘贴的图片为什么显示不完整
查看>>
SQL Server 数据库的鼠标操作
查看>>
net软件工程师求职简历
查看>>
总线置顶[置顶] Linux bus总线
查看>>
nullnullHandling the Results 处理结果
查看>>
SQL SERVER BOOK
查看>>
JS基础回顾,小练习(判断数组,以及函数)
查看>>
多任务——进程
查看>>
WCF:如何将net.tcp协议寄宿到IIS
查看>>
WebAPI HelpPage支持area
查看>>
Path元素
查看>>
php_soap扩展应用
查看>>
第二百三十一节,Bootstrap 介绍
查看>>
vi/vim 三种模式的操作
查看>>
JAVA面向对象三大特性总结
查看>>