formdata用法

来源:互联网 发布:360 cn域名多少钱买的 编辑:程序博客网 时间:2024/06/06 03:27

formdata用法

用法

对象的创建

创建一个formdata对象,用append方法添按照(属性,值)的方法添加数据。
例1:

//创建对象var oMyForm = new FormData();//添加数据 oMyForm.append("username", "Groucho");oMyForm.append("password", 123456); // 数字123456被立即转换成字符串"123456"// 添加文件数据,需获取file类型inputoMyForm.append("userfile", fileInputElement.files[0]);

可以利用表单初始化formdata对象
例2:

需先获取form表单var newFormData = new FormData(Form);//用append方法添加数据可以代替input  type=hidden写法

数据提交

jquery ajax举例

$.ajax({    url:"",    data:newFormData,    processData: false,  // 告诉jQuery不要去处理发送的数据    contentType: false,   // 告诉jQuery不要去设置Content-Type请求头    success:function(){}})

发送时直接将创建的formdata作为数据对象发送即可。注意的是要设置ajax的processdata属性和contenttype属性,在原生ajax中是setrequestheader函数中设置相应属性。这两个属性作用这里不再赘述。

注意点

1.h5新增,有兼容问题,如需在不兼容的浏览器中使用ajax提交表单,可以使用jquery的form插件(支持文件提交),或者serialize方法(不支持文件)
2.注意两个ajax对象属性
3.用formdata场景:ajax提交文件,或者说在提交表单时提交额外的信息。