jquery协作.NET完成点击钦定绑定数据同不常候能够一键下载_jquery_脚本之家【金沙8331网址】

近些日子在做培养锻练管理类别中遇见一个主题素材,必要需点击绑定的数量,将点名的附属类小构件下载下来,何况是批量下载(绑定的数码非datagrid,后台拼接的绑定)。

金沙8331网址,约略思路:

1.jquery收获中选的绑定数据的id,将这一个id赋值到数组中,最终将以此数组的值赋值给页面中创建的潜伏变量

2.后台获取到蒙蔽变量的值,并将它循环数组取值,得到绑定值的下载地址,最后打包下载

先是html中div依据后台绑定

说不上是下载附件的选项,利用jquery达成,何况将值赋值给页面中的隐敝变量,代码如下:

// 下载附件的选择 $attach = $; var arr = [] $attach.on('click', '.no', function .toggleClass;//设置和移除,选中与不选中 if .hasClass { var guid = $.children.val;//将guid添加到arr数组中 } else {//取消选中时 var guid = $.children.val(); var n = arr.indexOf arr.splice;//将指定不选中的guid移除arr数组 } $.val;

因为是后台拼接的,把button也凑合在了后台,后台button 调用js

一键下载function download.click(); }

js触发隐讳button事件

后台一键打包下载代码:

protected void btnDownload_Click(object sender, EventArgs e) { //ZipFileByCode(); string attachGuid = arrayGuid.Value; string[] sArray = attachGuid.Split; List list = new List(); foreach  { //这里是循环得到指定需要下载的所有id } Download(list, ""+lblCourseName.Text+"相关附件材料.rar"); }

public void ZipFileByCode() { MemoryStream ms = new MemoryStream(); byte[] buffer = null; using (ZipFile file = ZipFile.Create { file.BeginUpdate(); file.NameTransform = new MyNameTransfom();//通过这个名称格式化器,可以将里面的文件名进行一些处理。默认情况下,会自动根据文件的路径在zip中创建有关的文件夹。 file.Add(Server.MapPath("/Content/images/img01.jpg")); file.CommitUpdate(); buffer = new byte[ms.Length]; ms.Position = 0; ms.Read(buffer, 0, buffer.Length); } Response.AddHeader("content-disposition", "attachment;filename=test.zip"); Response.BinaryWrite; Response.Flush; }

private void Download(IEnumerable files, string zipFileName) { //根据所选文件打包下载 MemoryStream ms = new MemoryStream(); byte[] buffer = null; using (ZipFile file = ZipFile.Create { file.BeginUpdate(); file.NameTransform = new MyNameTransfom();//通过这个名称格式化器,可以将里面的文件名进行一些处理。默认情况下,会自动根据文件的路径在zip中创建有关的文件夹。 foreach  { file.Add; } //file.Add(Server.MapPath("../../BigFileUpLoadStorage/1.png")); file.CommitUpdate(); buffer = new byte[ms.Length]; ms.Position = 0; ms.Read(buffer, 0, buffer.Length); } Response.AddHeader("content-disposition", "attachment;filename=" + zipFileName); Response.BinaryWrite; Response.Flush; }

和pageload同层代码

public class MyNameTransfom : ICSharpCode.SharpZipLib.Core.INameTransform { #region INameTransform 成员 public string TransformDirectory { return null; } public string TransformFile { return Path.GetFileName; } #endregion }

以上正是本文的全体内容,希望对我们的学习抱有利于,也愿意大家多多关照脚本之家。

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注