HTML5 FormData 模拟表单控件 支持异步上传二进制文件 移动端

时间:2022-04-30 23:17:26

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

主流手机系统基本都是webkit内核,可以使用。

var form= new FormData (optional HTMLFormElement from);//可以接受一格表单元素便签

可以在谷歌console面板输入console.dir(form)查看form有那些方法:

1、append() :添加键值对的数据。

2、delete():根据键值名来删除要删除的数据。

3、entries():对键值对的遍历,ES2016语法,用法:form.entries.next()返回一个map数据结构的键值对,直接用form.entries()返回一个Iterator对象。

4、forEach():使用回调函数遍历每个成员。

5、get():通过key值获取value

6、getAll():

7、has():通过key值判断是否用该数据

8、keys():返回键名的遍历器Iterator

9、set():设置新值

10、values():返回值的遍历器Iterator

form.append(key,value);//添加键值对数据 如果已经传入一个表单的情况下,HTML 的name属性就是key 如<imput name="user"> 键值对的key就是name的值"user"

form.get("user");//根据HTML 的name属性 也即key来获取