当前位置: 首页 > news >正文

汇云网站建设媒体发布平台

汇云网站建设,媒体发布平台,南通网站建设团队,网站如何做图片特效一、前言 在前端的项目开发中 &#xff0c;下载文件压缩包是很重要的一个环节&#xff0c;那么怎么下载多个文件并压缩成ZIP下载呢&#xff1f; 二、使用步骤 1、引用库 <script type"text/javascript" src"~/Scripts/comm/jszip.min.js" ></…

一、前言

在前端的项目开发中 ,下载文件压缩包是很重要的一个环节,那么怎么下载多个文件并压缩成ZIP下载呢?

二、使用步骤

1、引用库

<script type="text/javascript" src="~/Scripts/comm/jszip.min.js" ></script><script type="text/javascript" src="~/Scripts/comm/FileSaver.min.js" ></script>

库下载地址:https://download.csdn.net/download/u012949335/88088658 

2、简单使用方法

var zip = new JSZip();
var zipName = "test";
var fileFolder = zip.folder(zipName);
fileFolder.file(fileList[k].name, fileList[k].content, {binary: true //二进制});
zip.generateAsync({type: 'blob'}).then(function(content){saveAs(content, zipName+'.zip');});

 3、封装高级用法

/**
*批量下载文件
*@param { Array } array 待下载数据
*@param { String } data 参数,需包含属性gndm
*@param { String } dg datagrid的id
*@param { String } url 请求下载文件url
*@param { String } filefolder 压缩文件夹
*@param { String } zipname 下载文件名称
*@param { String } field 失败显示字段名称
*@param { Boolean } tooltips 是否显示提示信息
*@example $.ajaxRecursionZipDownFile({ array: infolist, data: { "gndm": gndm }, datagrid: "XX", url: 'XXXX', filefolder: "XX附件", zipname: "XX附件.zip", field: "xh" });
*/
jQuery.ajaxRecursionZipDownFile = function (option) {if (typeof option === 'undefined') throw new Error("Please pass parameters");if (typeof option.url === 'undefined') throw new Error("Please pass parameters url");if (typeof option.array === 'undefined') throw new Error("Please pass parameters array");if (typeof option.field === 'undefined' || option.field === null) option.field = "xh";option.data = option.data || {};if (option.data.hasOwnProperty('gndm') === false) throw new Error("Please pass parameters data->gndm");option.zipname = option.zipname || "附件";option.filefolder = option.filefolder || "附件";option.tooltips = option.tooltips || false;var zip = new JSZip();var fileFolder = zip.folder(option.filefolder);var fileName = '';var _currentIndex = 0;var _successIndex = 0;var _faileXhInfo = '';var _currentTotal = option.array.length;pageLoadDown();function _recursionZipDownFiles() {if (_currentIndex >= _currentTotal) {zip.generateAsync({ type: 'blob' }).then(function (content) {saveAs(content, option.zipname);dispageload();var msg = "压缩成功:" + _successIndex.toString() + "个。失败数据:" + (_faileXhInfo || "无。");if (option.datagrid) $('#' + option.datagrid).datagrid('clearChecked');if (option.tooltips === true) {$.messager.alert('提示', msg, 'infoxx');if (!this._endmessagertimeout) {window.clearTimeout(this._endmessagertimeout);}this._endmessagertimeout = setTimeout("$(\".messager-body\").window('close');", 1000);}});return false;}var jsonObject = JSON.stringify(option.array[_currentIndex]);var _objdata = option.data;_objdata.json = jsonObject;axios({method: 'post',url: option.url,data: _objdata,responseType: 'blob'}).then(function (res) {var data = res.data;var reqHeader = res.headers;if (reqHeader["content-disposition"]) fileName = decodeURI(reqHeader["content-disposition"]).split('; ')[1].split('filename=')[1];if (data.size > 0) {fileFolder.file(fileName, data, { binary: true });_successIndex++;} else {_faileXhInfo += option.array[_currentIndex][option.field] + ";";}_currentIndex++;_changeProcess(Math.round((_currentIndex / _currentTotal) * 100));_recursionZipDownFiles(option.array, option.data.gndm);}, function (err) {_currentIndex++;_faileXhInfo += option.array[_currentIndex][option.field] + ";";_changeProcess(Math.round((_currentIndex / _currentTotal) * 100));});}_recursionZipDownFiles();
}

4、调用示例

 function getFilesZipDownInfo(gndm) {var rows = $("#dg").datagrid('getChecked');if (rows.length == 0) {$.messager.alert('提示', "请选择要下载的数据!", "error");return;}var infolist = [];$.each(rows, function (index, row) {var info = new Object();info.idxx = row.idxx;info.fjmcxx = row.fjmcxx;infolist.push(info);});$.ajaxRecursionZipDownFile({array: infolist,data: { "gndm": gndm },datagrid: "dg",url: 'downfile',filefolder: "实验报告附件",zipname: "实验报告附件.zip",field: "idxx",tooltips: true});}

5、效果展示

 

http://www.wangmingla.cn/news/58251.html

相关文章:

  • linux可以做网站开发吗什么是互联网推广
  • 杭州市政府门户网站建设百度推广开户怎么开
  • 政府网站建设价格不付费免费网站
  • 互联网营销师培训机构哪家好沈阳seo排名收费
  • 网站备案要拍照大家怎么做的啊广东seo点击排名软件哪里好
  • web购物网站如何做百度指数app官方下载
  • 北京网站建设手机app深圳优化公司排名
  • 广州网站建设推广公司网络推广和竞价怎么做
  • 做网站去哪里找模板汕头seo排名公司
  • 广州网站建设 .超凡科技百度热搜关键词排名
  • 做东西的网站有那些哪些网站可以免费申请域名
  • 网站建设honmau网络推广费用一般多少
  • 网站根目录在哪里哈尔滨网络公司
  • 上海做网站的费用厦门百度推广怎么做
  • 什么是独立站?网络营销师报名入口
  • 网站开发学什么编程语言成都网站快速优化排名
  • 1号网站建设网络营销是学什么
  • 使用flask做前后端分离的网站专业黑帽seo
  • 网站效果图确认表热点新闻事件及观点
  • 注册公司做网站外包公司到底值不值得去
  • 滨州五学一做考试网站西安seo服务公司
  • wordpress 小工具 功能搜外seo视频 网络营销免费视频课程
  • 可以做免费推广的网站有哪些外包网站有哪些
  • flash云网站外国搜索引擎登录入口
  • 网站建设参数网站怎么做出来的
  • 做网站的关键词是指seo网站关键字优化
  • 网站网页不对称如何搭建个人网站
  • 做网站图片的大小婚恋网站排名前三
  • 网站建设需要注意什么哪些seo快速排名软件推荐
  • 中国城乡住房建设厅网站网站建设是干什么的