serialize()和FormData對象都可將表單數據序列化,后通過ajax異步提交 ,序列化表單就是將form表單中所有name屬性序列化成KEY-VALUE的形式,提交到后台,后台以對象相應的字段接收
1.serialize()
serialize()是JQuery方法,必須依賴jQuery,可序列化表單值創建 URL 編碼文本字符串,就是將表單數據以字符串的形式返回,在ssm框架中可通過對象直接接收數據。
缺點:只能序列化一般數據,文件上傳則無法序列化,不支持文件二進制流提交。
2.FormData對象
FormData是HTML5對象,目前可兼容大多主流的瀏覽器,但不兼容低版本IE瀏覽器。
與普通的Ajax相比,使用FormData 的最大優點就是可以異步上傳二進制文件。
通過ajax異步提交表單數據,可實現文件上傳
注意:
1 form表單加 enctype="multipart/form-data";
2 ajax加 processData: false,contentType: false,
3 一般數據域通過此方式序列化后,在ssm框架中后台不可以通過對象直接獲取數據