JS下载文件|无刷新下载文件示例代码


Posted in Javascript onApril 17, 2014

后台代码Handler.ashx

<%@ WebHandler Language="C#" Class="Handler" %> using System; 
using System.Web; 
public class Handler : IHttpHandler { 
public void ProcessRequest (HttpContext context) { 
string fileName = "web.config";//客户端保存的文件名 
string filePath = context.Server.MapPath("web.config");//路径 
//以字符流的形式下载文件 
System.IO.FileStream fs = new System.IO.FileStream(filePath, System.IO.FileMode.Open); 
byte[] bytes = new byte[(int)fs.Length]; 
fs.Read(bytes, 0, bytes.Length); 
fs.Close(); 
context.Response.ContentType = "application/octet-stream"; 
//通知浏览器下载文件而不是打开 
context.Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8)); 
context.Response.BinaryWrite(bytes); 
context.Response.Flush(); 
context.Response.End(); 
} 
public bool IsReusable { 
get { 
return false; 
} 
} 
}

前端代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<script src="jquery-1.7.2.min.js" type="text/javascript"></script> 
<title></title> 
<script> 
function download_file(url) 
{ 
if (typeof (download_file.iframe) == "undefined") 
{ 
var iframe = document.createElement("iframe"); 
download_file.iframe = iframe; 
document.body.appendChild(download_file.iframe); 
} 
// alert(download_file.iframe); 
download_file.iframe.src = url; 
download_file.iframe.style.display = "none"; 

} 
</script> 
</head> 
<body> 
<a href="javascript:void(0);" onclick="download_file('Handler.ashx')">aaaaa</a> 
<a href="javascript:void(0);" onclick="download_file('Handler.ashx')">bbbbb</a> 
<a href="javascript:void(0);" onclick="download_file('Handler.ashx')">ccccc</a> 
</body> 
</html>
Javascript 相关文章推荐
Javascript 兼容firefox的一些问题
May 21 Javascript
js 去掉空格实例 Trim() LTrim() RTrim()
Jan 07 Javascript
Jquery倒计时源码分享
May 16 Javascript
javascript比较两个日期的先后示例代码
Dec 31 Javascript
详解JavaScript中数组的相关知识
Jul 29 Javascript
Javascript验证方法大全
Sep 21 Javascript
jquery实现全选、不选、反选的两种方法
Sep 06 Javascript
js数组去重的hash方法
Dec 22 Javascript
移动端使用localResizeIMG4压缩图片
Apr 22 Javascript
vue interceptor 使用教程实例详解
Sep 13 Javascript
JS实现指定区域的全屏显示功能示例
Apr 25 Javascript
Vue自定义全局弹窗组件操作
Aug 11 Javascript
你可能不知道的JavaScript的new Function()方法
Apr 17 #Javascript
在JS中解析HTML字符串示例代码
Apr 16 #Javascript
iframe的onreadystatechange事件在firefox下的使用
Apr 16 #Javascript
javascript打开word文档的方法
Apr 16 #Javascript
JavaScript数组深拷贝和浅拷贝的两种方法
Apr 16 #Javascript
JavaScript两种跨域技术全面介绍
Apr 16 #Javascript
Javascript WebSocket使用实例介绍(简明入门教程)
Apr 16 #Javascript
You might like
THinkPHP获取客户端IP与IP地址查询的方法
2016/11/14 PHP
php命令行模式代码实例详解
2021/02/26 PHP
不一样的文字闪烁 轮番闪烁
2009/11/11 Javascript
JavaScript高级程序设计 阅读笔记(十二) js内置对象Math
2012/08/14 Javascript
JavaScript中合并数组的N种方法
2014/09/16 Javascript
JavaScript编程中的Promise使用大全
2015/07/28 Javascript
jquery 点击元素后,滚动条滚动至该元素位置的方法
2016/08/05 Javascript
浅谈javascript的闭包
2017/01/23 Javascript
微信扫码支付零云插件版实例详解
2017/04/26 Javascript
JavaScript中三个等号和两个等号你了解多少
2017/07/04 Javascript
利用Vue实现移动端图片轮播组件的方法实例
2017/08/23 Javascript
微信小程序实现上传多个文件 超过10个
2020/03/30 Javascript
JS常见内存泄漏及解决方案解析
2020/05/30 Javascript
超详细小程序定位地图模块全系列开发教学
2020/11/24 Javascript
[01:20:05]DOTA2-DPC中国联赛 正赛 Ehome vs VG BO3 第二场 2月5日
2021/03/11 DOTA
Python和perl实现批量对目录下电子书文件重命名的代码分享
2014/11/21 Python
opencv3/python 鼠标响应操作详解
2019/12/11 Python
PyQt5+Pycharm安装和配置图文教程详解
2020/03/24 Python
pytorch中的weight-initilzation用法
2020/06/24 Python
CSS3下的渐变文字效果实现示例
2018/03/02 HTML / CSS
webView加载html图片遇到的问题解决
2019/10/08 HTML / CSS
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?用contains来区分是否有重复的对象。还是都不用
2013/07/30 面试题
Windows和Linux动态库应用异同
2016/07/28 面试题
白酒业务员岗位职责
2013/12/27 职场文书
简历自我评价模版
2014/01/31 职场文书
《苏珊的帽子》教学反思
2014/04/07 职场文书
校园活动策划方案
2014/06/13 职场文书
意外伤害赔偿协议书
2014/09/16 职场文书
卫生厅领导班子党的群众路线教育实践活动整改措施
2014/09/20 职场文书
实训报告范文大全
2014/11/04 职场文书
2015迎新晚会活动总结
2015/07/16 职场文书
新闻稿标题
2015/07/18 职场文书
教师节感想
2015/08/11 职场文书
劳动合同变更协议书范本
2019/04/18 职场文书
python 调用js的四种方式
2021/04/11 Python
python opencv检测直线 cv2.HoughLinesP的实现
2021/06/18 Python