JavaScript~文件下载的几种方式
1.通过a标签的方式来下载
成都创新互联公司是一家专注于网站设计、成都网站建设与策划设计,锦江网站建设哪家好?成都创新互联公司做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:锦江等地区。锦江做网站价格咨询:18982081108
2.通过提交form表单的方式
var $form = $(''); angular.forEach(d,function(v,k){ v = JSON.stringify(v); var $input = $(''); $input.attr('value',v); $form.append($input); }); $element.append($form); $form.submit(); $form.remove();
3.通过http的请求拿到文件流的方式
$http({ url : $scope.url, method : 'post', data : $scope.form.formdata, responseType : 'arraybuffer', }).then(function(d){ var data = d.data; var blob = new Blob([data], {type: "text/plain"}); //var blob = new Blob([data], {type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});//xlsx //var blob = new Blob([data], {type: "application/vnd.ms-excel"});//xls var downloadTitle = ''; if(d.headers('content-disposition').indexOf('filename') != -1){ downloadTitle = d.headers('content-disposition').split(';')[1].split('=')[1]; downloadTitle = decodeURI(downloadTitle); } if(typeof window.navigator.msSaveBlob !== 'undefined'){ window.navigator.msSaveBlob(blob, downloadTitle); }else{ var objectUrl = URL.createObjectURL(blob); var aForExcel = $("").attr("href",objectUrl); $("body").append(aForExcel); $(".forExcel").click(); aForExcel.remove(); } });
本文名称:JavaScript~文件下载的几种方式
文章源于:http://myzitong.com/article/pdccgd.html