FormData是H5的新API,用来在提交表单的时候传送表单数据的,当然并不是只有提交表单的时候可以用,其它地方也可以用,比如一些和后台的通讯,发送数据,也可以使用FormData来进行数据的传输。
FormData通过new FormData()来进行实例化,并接收Form对象或其它表单对象作为参数。实例化后的FormData有以下几个方法:
append方法向formData中添加字段,一共有三个参数,第一个参数为键看,第二个参数为要添加的值,可以是字符串,也可以是Blob对象,第三个参数可选,传送给服务器的文件名称,当时Blob对象的时候可用,默认的文件名为Blob。
delete方法删除formData中的数据,接收一个参数,要删除的键名
entries方法返回一个iterator对象,通过其可以对formData里的值进行遍历。
get方法获取formData中与指定键第一个关联的数据,接收一个键作为参数。
getAll方法获取formData中与指定键关联的所有数据,接收一个键作为参数。
has方法判断formData中是否包含某个key,接收一个key作为参数,返回一个布尔类型。
keys方法返回包含所有key的iterator对象。
set方法给formData中的指定键设置新的值,接收一个键和一个值作为参数,第三个参数可选,为文件名,当值为Blob对象时可用。
values方法也返回一个允许遍历的iterator对象。
提供的事件
loadstart事件,当程序开始加载时执行。
progress事件,进度事件,用来表示一个操作正在进行中。
abort事件,当资源终止加载时执行。
error事件,资源加载失败时执行。
load事件,当资源加载完毕时执行。
timeout事件,当进度到达指定时间时触发。
loadend事件,一个资源的加载进度停止之后触发,会在error、abort、load之后触发。
onreadystatechange事件,当文档的readyState属性发生改变时触发。