FormData 知識點

  • 經過FormData對象能夠組裝一組用 XMLHttpRequest發送請求的鍵/值對。它能夠更靈活方便的發送表單數據,所以能夠獨立於表單使用。
    若是你把表單的編碼類型設置爲multipart/form-data ,則經過FormData傳輸的數據格式和表單經過submit() 方法傳輸的數據格式相同。
    所以:使用FormData對象,和把表單的編碼類型設置爲multipart/form-data,傳輸的數據格式相同。
    此段文字出處:https://developer.mozilla.org/zh-CN/docs/Web/API/FormData/Using_FormData_Objectsphp

  • FormData對象能夠發送的數據格式:
    a Blob, File, or a string, if neither, the value is converted to a string
    對象和數組,須要先用JSON.stringify轉換下。
    轉換後,數組形式爲:["aaa","",""];不然,數組是這樣的(逗號分隔的字符串):,,,,數組

  • 建立FormData對象的2種方式(第一種方式,能夠不與form表單關聯):app

  1. 直接建立一個FormData對象,而後經過調用它的append()方法添加字段,就像這樣:
var formData = new FormData();
formData.append("username", "Groucho");
  1. 經過HTML表單建立FormData對象
    想要構造一個包含Form表單數據的FormData對象,須要在建立FormData對象時指定表單的元素。
var formData = new FormData(someFormElement);

示例:編碼

var formElement = document.querySelector("form");
var request = new XMLHttpRequest();
request.open("POST", "submitform.php");
request.send(new FormData(formElement));
相關文章
相關標籤/搜索