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 相关文章推荐
使用jQuery插件创建常规模态窗口登陆效果
Aug 23 Javascript
Jquery中给animation加更多的运作效果实例
Sep 05 Javascript
Javascript实现商品秒杀倒计时(时间与服务器时间同步)
Sep 16 Javascript
jquery+css3实现会动的小圆圈效果
Jan 27 Javascript
javascript基本算法汇总
Mar 09 Javascript
js实现类bootstrap模态框动画
Feb 07 Javascript
SpringMVC+bootstrap table实例详解
Jun 02 Javascript
ejsExcel模板在Vue.js项目中的实际运用
Jan 27 Javascript
Webpack中publicPath路径问题详解
May 03 Javascript
Seajs源码详解分析
Apr 02 Javascript
vue登录注册实例详解
Sep 14 Javascript
微信小程序中的video视频实现 自定义播放按钮、封面图、视频封面上文案
Jan 02 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
PHP开发文件系统实例讲解
2006/10/09 PHP
PHP脚本的10个技巧(1)
2006/10/09 PHP
PHP版微信公众平台红包API
2015/04/02 PHP
在IIS下安装PHP扩展的方法(超简单)
2017/04/10 PHP
php生成网页桌面快捷方式
2017/05/05 PHP
浅谈JavaScript中面向对象技术的模拟
2006/09/25 Javascript
jQuery 顺便学习下CSS选择器 奇偶匹配nth-child(even)
2010/05/24 Javascript
js控制input输入字符解析
2013/12/27 Javascript
JavaScript动态插入CSS的方法
2015/12/10 Javascript
Bootstrap实现下拉菜单效果
2016/04/29 Javascript
浅谈JavaScript前端开发的MVC结构与MVVM结构
2016/06/03 Javascript
浅谈时钟的生成(js手写简洁代码)
2016/08/20 Javascript
Ajax使用原生态JS验证用户名是否存在
2020/05/26 Javascript
JS实现探测网站链接的方法【测试可用】
2016/11/08 Javascript
ios设备中angularjs无法改变页面title的解决方法
2018/09/13 Javascript
vue中当图片地址无效的时候,显示默认图片的方法
2018/09/18 Javascript
three.js实现圆柱体
2018/12/30 Javascript
弱类型语言javascript开发中的一些坑实例小结【变量、函数、数组、对象、作用域等】
2019/08/07 Javascript
24个ES6方法解决JS实际开发问题(小结)
2020/05/31 Javascript
[02:20]2014DOTA2西雅图邀请赛 MVP外卡赛首胜采访
2014/07/09 DOTA
Python 隐藏输入密码时屏幕回显的实例
2019/02/19 Python
Python使用POP3和SMTP协议收发邮件的示例代码
2019/04/16 Python
python全局变量引用与修改过程解析
2020/01/07 Python
如何在django中添加日志功能
2020/02/06 Python
html5 canvas-1.canvas介绍(hello canvas)
2013/01/07 HTML / CSS
美国电子元器件分销商:Newark element14
2018/01/13 全球购物
俄罗斯在线服装店:STOLNIK
2021/03/07 全球购物
档案室主任岗位职责
2014/02/12 职场文书
中国入世承诺
2014/04/01 职场文书
授权委托书怎么写
2014/04/03 职场文书
优秀毕业生主要事迹材料
2015/11/04 职场文书
2016清明节森林防火广播稿
2015/12/17 职场文书
心得体会该怎么写呢?
2019/06/27 职场文书
python某漫画app逆向
2021/03/31 Python
新手入门Jvm-- JVM对象创建与内存分配机制
2021/06/18 Java/Android
如何利用Python实现n*n螺旋矩阵
2022/01/18 Python