利用ajaxfileupload插件实现文件上传无刷新的具体方法


Posted in Javascript onJune 08, 2013

 做项目的时候遇到了这样一个问题,如果用普通的ASP.NET FileUpload控件实现文件上传,那么页面会刷新,那么页面上用JS拼出的元素就会消失,为了上传文件,又不能刷新页面,ajaxfileupload插件是一个很好的选择(插件下载地址://img.jbzj.com/file_images/article/201306/js/ajaxfileupload.js)

ajaxfileupload是jQuery的一个插件,使用这个插件同时要引用jQuery.js文件

直接上代码吧

JS代码

[javascript]

//执行AJAX上传文件  
$.ajaxFileUpload({ 
url: '/Web/Teacher/ImportAchievements.ashx', 
secureuri: false, 
fileElementId: 'fulAchievements', 
dataType: 'json', 
success: function (data, status) { 
    alert(data[0]); 
} 
}); 
 //执行AJAX上传文件
 $.ajaxFileUpload({
 url: '/Web/Teacher/ImportAchievements.ashx',
 secureuri: false,
 fileElementId: 'fulAchievements',
 dataType: 'json',
 success: function (data, status) {
  alert(data[0]);
 }
 });

说明:

1.这个方法很像大家熟知的$.ajax方法

2.参数说明

url:AJAX的后台代码文件,要接收前台传来的文件数据

secureuri:是否对上传的文件加密

fileElementId:HTML中<input type="file"/>上传控件的Id值,这里需要注意的是,后台代码是通过name-value的形式接收数据的,所以后台代码是通过name来接收数据的,而不是Id(根本原因是,这个方法会自动生成一个表单,将表单提交给后台代码处理)。

dataType:数据类型,一般是‘json'

success:上传成功后执行的回调函数

ASP.NET一般处理程序中的代码

[csharp]

public void ProcessRequest (HttpContext context) { 
    context.Response.ContentType = "text/html";//这里很关键,虽然前台数据类型是json,但这里一定要写html  
    //获取前台传来的文件  
    HttpFileCollection files = HttpContext.Current.Request.Files; 
    //将文件保存在网站目录中  
    files[0].SaveAs(context.Server.MapPath("/Web/uploadFiles/Achievements.xls")); 
    //返回用json数据格式表示的提示  
    string result = "[" + "\"" + "成绩导入成功" + "\"" + "]"; 
    context.Response.Write(result); } 

public void ProcessRequest (HttpContext context) {
 context.Response.ContentType = "text/html";//这里很关键,虽然前台数据类型是json,但这里一定要写html
 //获取前台传来的文件
 HttpFileCollection files = HttpContext.Current.Request.Files;
 //将文件保存在网站目录中
 files[0].SaveAs(context.Server.MapPath("/Web/uploadFiles/Achievements.xls"));
 //返回用json数据格式表示的提示
 string result = "[" + "\"" + "成绩导入成功" + "\"" + "]";
 context.Response.Write(result);
}

这样就实现了AJAX上传文件,页面不会刷新,有需要的试试吧。
Javascript 相关文章推荐
javascript之ESC(第二类混淆)
May 06 Javascript
两个DIV等高的JS的实现代码
Dec 23 Javascript
JavaScript库 开发规则
Jan 31 Javascript
JavaScript面向对象(极简主义法minimalist approach)
Jul 17 Javascript
JS实现商品倒计时实现代码
May 03 Javascript
JavaScript作用域链示例分享
May 27 Javascript
jQuery滚动加载图片实现原理
Dec 14 Javascript
JavaScript基础之流程控制语句的用法
Aug 31 Javascript
深入理解requireJS-实现一个简单的模块加载器
Jan 15 Javascript
微信小程序实现的3d轮播图效果示例【基于swiper组件】
Dec 11 Javascript
JS co 函数库的含义和用法实例总结
Apr 08 Javascript
vue实现点击按钮“查看详情”弹窗展示详情列表操作
Sep 09 Javascript
JavaScript自动设置IFrame高度的小例子
Jun 08 #Javascript
EXTjs4.0的store的findRecord的BUG演示代码
Jun 08 #Javascript
JavaScript String.replace函数参数实例说明
Jun 06 #Javascript
jquery DIV撑大让滚动条滚到最底部代码
Jun 06 #Javascript
window.showModalDialog参数传递中含有特殊字符的处理方法
Jun 06 #Javascript
js实现鼠标拖动图片并兼容IE/FF火狐/谷歌等主流浏览器
Jun 06 #Javascript
当鼠标移动到图片上时跟随鼠标显示放大的图片效果
Jun 06 #Javascript
You might like
PHP 源代码压缩小工具
2009/12/22 PHP
推荐一款PHP+jQuery制作的列表分页的功能模块
2014/10/14 PHP
微信公众号实现会员卡领取功能
2017/06/08 PHP
jQuery使用手册之二 DOM操作
2007/03/24 Javascript
ie 处理 gif动画 的onload 事件的一个 bug
2007/04/12 Javascript
js导出格式化的excel 实例方法
2013/07/17 Javascript
js jq 单击和双击区分示例介绍
2013/11/05 Javascript
js实现身份证号码验证的简单实例
2014/02/19 Javascript
wap图片滚动特效无css3元素纯js脚本编写
2014/08/22 Javascript
基于jquery实现一个滚动的分步注册向导-附源码
2015/08/26 Javascript
浅谈JavaScript 浏览器对象
2016/06/03 Javascript
如何用js判断dom是否有存在某class的值
2017/02/13 Javascript
微信小程序 基础知识css样式media标签
2017/02/15 Javascript
javascript ES6中箭头函数注意细节小结
2017/02/17 Javascript
使用grunt合并压缩js和css文件的方法
2017/03/02 Javascript
ajax +NodeJS 实现图片上传实例
2017/06/06 NodeJs
原生JS实现DOM加载完成马上执行JS代码的方法
2018/09/07 Javascript
vue axios数据请求及vue中使用axios的方法
2018/09/10 Javascript
vue微信分享的实现(在当前页面分享其他页面)
2019/04/16 Javascript
ES6顶层对象、global对象实例分析
2019/06/14 Javascript
python 数据加密代码
2008/12/24 Python
python里将list中元素依次向前移动一位
2014/09/12 Python
Python中的深拷贝和浅拷贝详解
2015/06/03 Python
基于Python如何使用AIML搭建聊天机器人
2016/01/27 Python
Python环境下安装使用异步任务队列包Celery的基础教程
2016/05/07 Python
python版简单工厂模式
2017/10/16 Python
完美解决keras 读取多个hdf5文件进行训练的问题
2020/07/01 Python
Urban Outfitters英国官网:美国平价服饰品牌
2016/11/25 全球购物
Spotahome意大利:公寓和房间出租
2020/02/21 全球购物
写自荐信有哪些不宜?
2013/10/17 职场文书
物业门卫岗位职责
2013/12/28 职场文书
工艺员岗位职责
2014/02/11 职场文书
2014年党的群众路线教育实践活动总结
2014/04/25 职场文书
客户经理竞聘演讲稿
2014/05/15 职场文书
Nginx URL重写rewrite机制原理及使用实例
2021/04/01 Servers
Go Grpc Gateway兼容HTTP协议文档自动生成网关
2022/06/16 Golang