利用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 相关文章推荐
js将iframe中控件的值传到主页面控件中的实现方法
Mar 11 Javascript
多种方法判断Javascript对象是否存在
Sep 22 Javascript
javascript学习笔记之函数定义
Jun 25 Javascript
jquery实现页面常用的返回顶部效果
Mar 04 Javascript
JavaScript函数内部属性和函数方法实例详解
Mar 17 Javascript
JavaScript 中 avalon绑定属性总结
Oct 19 Javascript
实例分析浏览器中“JavaScript解析器”的工作原理
Dec 12 Javascript
详解使用vue实现tab 切换操作
Jul 03 Javascript
webpack实现热加载自动刷新的方法
Jul 30 Javascript
简述jQuery Easyui一些用法
Aug 01 jQuery
react 不用插件实现数字滚动的效果示例
Apr 14 Javascript
微信小程序自定义顶部组件customHeader的示例代码
Jun 03 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中取得文件的后缀名?
2012/02/20 PHP
利用PHP实现短域名互转
2013/07/05 PHP
CI框架(CodeIgniter)公共模型类定义与用法示例
2017/08/10 PHP
PHP中检查isset()和!empty()函数的必要性
2019/02/13 PHP
javascript 得到变量类型的函数
2010/05/19 Javascript
Jquery 模板数据绑定插件的使用方法详解
2013/07/08 Javascript
js遍历子节点子元素附属性及方法
2014/08/19 Javascript
AngularJS入门教程之学习环境搭建
2014/12/06 Javascript
JavaScript使用setTimeout实现延迟弹出警告框的方法
2015/04/07 Javascript
学习掌握JavaScript中this的使用技巧
2016/08/29 Javascript
jquery购物车结算功能实现方法
2020/10/29 Javascript
javascript history对象详解
2017/02/09 Javascript
javascript作用域链与执行环境详解
2017/03/25 Javascript
ES6知识点整理之数组解构和字符串解构的应用示例
2019/04/17 Javascript
layer弹出层显示在top顶层的方法
2019/09/11 Javascript
原生JS实现留言板
2020/03/26 Javascript
详解Webpack4多页应用打包方案
2020/07/16 Javascript
Vue2.x和Vue3.x的双向绑定原理详解
2020/11/05 Javascript
[01:02:10]DOTA2上海特级锦标赛B组小组赛#2 VG VS Fnatic第一局
2016/02/26 DOTA
Pandas之drop_duplicates:去除重复项方法
2018/04/18 Python
儿童python练习实例
2018/05/27 Python
在双python下设置python3为默认的方法
2018/10/31 Python
python判断文件夹内是否存在指定后缀文件的实例
2019/06/10 Python
django使用haystack调用Elasticsearch实现索引搜索
2019/07/24 Python
Windows系统Python直接调用C++ DLL的方法
2019/08/01 Python
Python 迭代,for...in遍历,迭代原理与应用示例
2019/10/12 Python
python中使用input()函数获取用户输入值方式
2020/05/03 Python
HTML5 localStorage使用总结
2017/02/22 HTML / CSS
会议欢迎标语
2014/06/30 职场文书
党的群众路线整改落实情况汇报
2014/10/28 职场文书
乡镇2014法制宣传日活动总结
2014/11/01 职场文书
给客户的感谢信
2015/01/21 职场文书
招商银行工作证明
2015/06/17 职场文书
2016新年感言
2015/08/03 职场文书
九年级语文教学反思
2016/03/03 职场文书
Html5生成验证码的示例代码
2021/05/10 Javascript