L84*_*L84 34 javascript ajax jquery form-data
最近我使用AJAX提交表单.
在研究最好的方法时,我看到了一些AJAX提交使用.serialize()和其他使用FormData.例如.
一份意见书做了这个:
data: form.serialize()
Run Code Online (Sandbox Code Playgroud)
而另一个做了:
var formData = new FormData($('form')[0]);
data: formData
Run Code Online (Sandbox Code Playgroud)
那么FormData和之间的区别是什么.serialize()?
cha*_*tfl 36
与使用角度的主要区别在于,您无法序列化文件,只能序列化文件名.... value文件输入.
FormData 另一方面,对象还包括文件(如果适用).
也serialize()适用于不支持FormData API的旧浏览器,例如IE <10
小智 6
一个更重要的区别是表单中空输入字段的处理。
连载()只包含带有值的输入字段。键/值对中将缺少未选中的复选框或空的输入字段。因此,您的应用程序的后端必须进行一些记账,以便将缺失的键解释为空值。
表单数据将为您提供所有表单字段及其值的完整列表。即使它们是空的。