加工前輩的文章 只為更好的理解及分享 --nian
引用于 :
http://my.oschina.net/u/1866405/blog/335987
摘要 通常我們提交(使用submit button)時,會把form中的所有表格元素的name與value組成一個queryString,提交到后臺喻鳄。這用jQuery的方法來說陋葡,就是serialize。但當我們使用Ajax提交時腮出,這過程就要變成人工的了。因此,F(xiàn)ormData對象的出現(xiàn)可以減少我們一些工作量鄙皇。
想得到一個FormData對象:
var formdata = new FormData();
W3c草案提供了三種方案來獲取或修改FormData。
方案1:
創(chuàng)建一個空的FormData對象仰挣,然后再用append方法逐個添加鍵值對:
var formdata = new FormData();
formdata.append( "name", "呵呵");
方案2:
取得form元素對象伴逸,將它作為參數(shù)傳入FormData對象中!
var formobj = document.getElementById("form");
var formdata = new FormData(formobj);
方案3:
利用form元素對象的getFormData方法生成它膘壶!
var formobj = document.getElementById("form");
var formdata = formobj.getFormData();
利用Formdata對象错蝴,我們可以使用原生js通過ajax實現(xiàn)異步上傳圖片洲愤,當然,現(xiàn)在已經(jīng)有jquery的批量上傳插件了顷锰,實現(xiàn)原理就是利用了Formdata柬赐。