formData的使用
来源:互联网 发布:胜利足球欧赔数据库 编辑:程序博客网 时间:2024/06/03 22:19
这两天公司大佬让我重写一个内部使用软件的页面,我蹭蹭蹭的就给他把静态页面写完了,之后就是请求,可把我难死了,其中遇到两个大问题,一个是跨域请求,还没解决,谁来帮帮我啊??另一个是表单提交,用formData,现记录如下。
一、认识formData
XMLHttpRequest Level 2添加了一个新的接口FormData.利用FormData对象,我们可以通过JavaScript用一些键值对来模拟一系列表单控件,我们还可以使用XMLHttpRequest的send()方法来异步的提交这个”表单”.比起普通的ajax,使用FormData的最大优点就是我们可以异步上传一个二进制文件.
二、创建一个formData
1.创建一个空对象实例
var formdata = new FormData();
2.通过form表单实例化一个formData对象,form表单
html
<form action = '' method = '' enctype = 'multipart/form-data'> <input type = 'text' name = ''></form>
js
var form = document.queryselector('form');var formdata = new FormData(form);
三、常用方法
1、append() 在原有的formdata对象上添加数据,如果键不存在则会添加该键。
formdata.append(key,value);
2、set() 在原有的formData对象中添加数据,如果已存在,则替换,不存在,则添加
formdata.set(key,value);
3、delete() 从引用的formData对象上删除
formdata.delete(key);
4、get()和getAll() 通过键得到值
var formData = new FormData();formData.append('username', 'aa');formData.append('username', 'bb');formData.get('username'); // return "bb"formData.getAll('username');// return ['aa','bb']
5、has() 判断这个formData对象中是否包含该 数据
var formData = new FormData();formData.append('username', 'aa');formData.has('username'); //return trueformData.has('password'); //return false
6、entries() 返回一个iterator对象
var formData = new FormData();formData.append('key1', 'value1');formData.append('key2', 'value2');// Display the key/value pairsfor(var pair of formData.entries()) { console.log(pair[0]+ ', '+ pair[1]); }
7、keys() 返回一个iterator对象,输出所有的key
var formData = new FormData();formData.append('key1', 'value1');formData.append('key2', 'value2');// 输出所有的 keyfor (var key of formData.keys()) { console.log(key); }
8、values() 返回一个iterator,显示所有的值
//创建一个FormData测试对象var formData = new FormData();formData.append('key1', 'value1');formData.append('key2', 'value2');//显示值for (var value of formData.values()) { console.log(value); }
四、使用ajax()上传formData数据
$.ajax({ type:'post', url:'....', // cache: false, processData: false, // 是否序列化data属性,默认true(注意:false时type必须是post) contentType: false, // 当有文件要上传时,此项是必须的,否则后台无法识别文件流的起始位置 data:formData, //formData类型的数据 success:function(){ }, error:function(){ }});
参考自:MDN
阅读全文
0 0
- FormData 对象的使用
- FormData 对象的使用
- FormData 对象的使用
- FormData的使用
- formData的使用
- FormData的使用
- FormData 对象的使用
- jq的ajax 使用formdata
- ssh ajax、FormData的使用
- 使用FormData
- FormData的详细介绍及使用
- HTML5中FormData对象的使用
- 使用jquery的FormData上传文件
- 文件上传与FormData对象的使用
- 使用FormData对象
- 使用FormData对象
- 使用FormData对象
- 使用FormData对象
- 我为什么写博客
- bootstrap简介
- poj-1163-The Triangle-动态规划dp
- Java对象的字节大小
- Ubuntu14.04 搭建FTP
- formData的使用
- 挑战程序竞赛系列(71):4.7高度数组(1)
- Day5
- Zynq-Linux移植学习笔记之21-Linux启动时自动以root账号登录
- 给定一个字符串,问是否能通过添加一个字母将其变为回文串。js实现
- Linux
- Java爬虫入门简介(三)——HttpClient保存使用Cookie登录
- 基于惯性轮倒立摆原理的自行车
- python+学习记录+