jQuery Ajax 上传文件处理方式介绍(推荐)


Posted in Javascript onJune 30, 2016

AJAX 是一种与服务器交换数据的技术,可以在补充在整个页面的情况下更新网页的一部分。

下面的表格列出了所有的 jQuery AJAX 方法:

jQuery Ajax 上传文件处理方式介绍(推荐)

jQuery Ajax在web应用开发中很常用,它主要包括有ajax,get,post,load,getscript等等这几种常用无刷新操作方法,接下来通过本文给大家介绍jquery ajax 上传文件处理方式。

FormData对象

XMLHttpRequest Level 2添加了一个新的接口FormData.利用FormData对象,我们可以通过JavaScript用一些键值对来模拟一系列表单控件,我们还可以使用XMLHttpRequest的send()方法来异步的提交这个”表单”.比起普通的ajax,使用FormData的最大优点就是我们可以异步上传一个二进制文件.

所有主流浏览器的较新版本都已经支持这个对象了,比如Chrome 7+、Firefox 4+、IE 10+、Opera 12+、Safari 5+。之前都是用原生js的XMLHttpRequest写的请求

XMLHttpRequest方式

xhr.open("POST", uri, true);
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
// Handle response.
alert(xhr.responseText); // handle response.
}
};
fd.append('myFile', file);
// Initiate a multipart/form-data upload
xhr.send(fd);

其实jquery的ajax也可以支持到的,关键是设置:processData 和 contentType 。

ajax方式

var formData = new FormData();
var name = $("input").val();
formData.append("file",$("#upload")[0].files[0]);
formData.append("name",name);
$.ajax({ 
url : Url, 
type : 'POST', 
data : formData, 
// 告诉jQuery不要去处理发送的数据
processData : false, 
// 告诉jQuery不要去设置Content-Type请求头
contentType : false,
beforeSend:function(){
console.log("正在进行,请稍候");
},
success : function(responseStr) { 
if(responseStr.status===0){
console.log("成功"+responseStr);
}else{
console.log("失败");
}
}, 
error : function(responseStr) { 
console.log("error");
} 
});
Javascript 相关文章推荐
JavaScript类和继承 prototype属性
Sep 03 Javascript
使用Json比用string返回数据更友好,也更面向对象一些
Sep 13 Javascript
js读写json文件实例代码
Oct 21 Javascript
JQuery DIV 动态隐藏和显示的方法
Jun 23 Javascript
微信小程序页面间通信的5种方式
Mar 31 Javascript
详解如何在Angular中快速定位DOM元素
May 17 Javascript
详谈ES6中的迭代器(Iterator)和生成器(Generator)
Jul 31 Javascript
vue+vuex+axios+echarts画一个动态更新的中国地图的方法
Dec 19 Javascript
解决循环中setTimeout执行顺序的问题
Jun 20 Javascript
vue实现百度下拉列表交互操作示例
Mar 12 Javascript
ES6模板字符串和标签模板的应用实例分析
Jun 25 Javascript
JavaScript中的全局属性与方法深入解析
Jun 14 Javascript
关于JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法
Jun 30 #Javascript
浅谈js图片前端预览之filereader和window.URL.createObjectURL
Jun 30 #Javascript
浅谈JS中json数据的处理
Jun 30 #Javascript
原生js实现自由拖拽弹窗代码demo
Jun 29 #Javascript
JS中Json数据的处理和解析JSON数据的方法详解
Jun 29 #Javascript
简单实现js间歇或无缝滚动效果
Jun 29 #Javascript
js精准的倒计时函数分享
Jun 29 #Javascript
You might like
图片存储与浏览一例(Linux+Apache+PHP+MySQL)
2006/10/09 PHP
Linux+Nginx+MySQL下配置论坛程序Discuz的基本教程
2015/12/23 PHP
PHP中PDO事务处理操作示例
2018/05/02 PHP
Js 订制自己的AlertBox(信息提示框)
2009/01/09 Javascript
一个tab标签切换效果代码
2009/03/27 Javascript
改变隐藏的input中value值的方法
2014/03/19 Javascript
跟我学Nodejs(二)--- Node.js事件模块
2014/05/21 NodeJs
JavaScript判断图片是否已经加载完毕的方法汇总
2016/02/05 Javascript
js实现select选择框效果及美化
2016/08/19 Javascript
JS常用加密编码与算法实例总结
2016/12/22 Javascript
基于BootStrap的前端分页带省略号和上下页效果
2017/05/18 Javascript
详解vue前后台数据交互vue-resource文档
2017/07/19 Javascript
vue-devtools的安装步骤
2018/04/23 Javascript
详解jquery和vue对比
2019/04/16 jQuery
vue引入静态js文件的方法
2020/06/20 Javascript
详解Python中的__init__和__new__
2014/03/12 Python
Python类的多重继承问题深入分析
2014/11/09 Python
python检查序列seq是否含有aset中项的方法
2015/06/30 Python
python中异常报错处理方法汇总
2016/11/20 Python
Python基础练习之用户登录实现代码分享
2017/11/08 Python
Django框架教程之正则表达式URL误区详解
2018/01/28 Python
解决Pycharm界面的子窗口不见了的问题
2019/01/17 Python
python栈的基本定义与使用方法示例【初始化、赋值、入栈、出栈等】
2019/10/24 Python
Jupyter 无法下载文件夹如何实现曲线救国
2020/04/22 Python
Python判断字符串是否为合法标示符操作
2020/09/03 Python
Html5移动端适配IphoneX等机型的方法
2019/06/25 HTML / CSS
解释下列WebService名词:WSDL、SOAP、UDDI
2012/06/22 面试题
工程管理造价应届生求职信
2013/11/13 职场文书
爱岗敬业演讲稿范文
2014/01/14 职场文书
上课说话检讨书大全
2014/01/22 职场文书
学校消防演习方案
2014/02/19 职场文书
荒岛余生观后感
2015/06/09 职场文书
小学生作文之《压岁钱的烦恼》
2019/09/27 职场文书
浅谈python中的多态
2021/06/15 Python
vue使用watch监听属性变化
2022/04/30 Vue.js
Java实现扫雷游戏详细代码讲解
2022/05/25 Java/Android