首页 > 代码库 > 下载文件:AJAX下载效果

下载文件:AJAX下载效果

    //下载    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

 

下载文件:AJAX下载效果