//下载 function Download(id) { var form = $("<form>"); //定义一个form表单 form.attr('style', 'display:none'); //在form表单中添加查询参数 form.attr('target', ''); form.attr('method', 'post'); form.attr('action', "/task/DetailDownload"); var input1 = $('<input>'); input1.attr('type', 'hidden'); input1.attr('name', 'id'); input1.attr('value', id); $('body').append(form); //将表单放置在web中 form.append(input1); //将查询参数控件提交到表单上 form.submit(); }
MVC 控制器 那里的代码
#region 详情-下载 public void DetailDownload(int id) { Model.Attachment entity = am.GetByAttachmentID(id); string fileName = entity.AttachmentName.Split('/')[1];//客户端保存的文件名 string filePath = Common.ConfigHelper.GetConfigString("picUpload") + "/Attachment/" + entity.AttachmentName; //以字符流的形式下载文件 FileStream fs = new FileStream(filePath, FileMode.Open); byte[] bytes = new byte[(int)fs.Length]; fs.Read(bytes, 0, bytes.Length); fs.Close(); Response.ContentType = "application/octet-stream"; //通知浏览器下载文件而不是打开 Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8)); Response.BinaryWrite(bytes); Response.Flush(); Response.End(); } #endregion