FormData

XMLHttpRequest 2 добавляет поддержку для нового интерфейса FormData. Объекты FormData позволяют вам легко конструировать наборы пар ключ-значение, представляющие поля формы и их значения, которые в дальнейшем можно отправить с помощью метода send().

FormData использует такой же формат на выходе, как если бы мы отправляли обыкновенную форму с encoding установленным в "multipart/form-data".

Важно: О деталях использования FormData можно прочитать в статье Использование объекта FormData.

Конструктор

FormData()
Создаёт объект FormData.

Методы

FormData.append()
Добавляет новое значение существующего поля объекта FormData, либо создаёт его и присваивает значение.
FormData.delete()
Удаляет пару ключ-значение из объекта FormData.
FormData.get()
Возвращает первое значение ассоциированное с переданным ключом из объекта FormData.
FormData.getAll()
Возвращает массив всех значений ассоциированных с переданным ключом из объекта FormData.
FormData.has()
Возвращает булево значение касательно наличия в объекте FormData  конкретной пары ключ-значение.
FormData.set()
Устанавливает новое значение для существующего ключа объекта FormData, или добавляет пару ключ-значение, если таковой не обнаружено в объекте.
FormData.keys()
Возвращает iterator , который позволяет пройтись по всем ключам для каждой пары "ключ-значение" , содержащимся внутри объекта FormData
FormData.entries()
Возвращает iterator который позволяет пройтись по всем парам "ключ-значение", содержащимся внутри объекта FormData
FormData.values()
Возвращает iterator , который позволяет пройтись по всем значениям , содержащимся в объекте FormData

Важно: Разница между FormData.set() и FormData.append() заключается в том, что если указанный ключ найден в объекте, FormData.set() перезапишет его новым значением, тогда как FormData.append() добавит новое значение в конец существующего. Смотрите дополнительные материалы с примерами. 

Спецификация

Спецификация Статус Примечание
XMLHttpRequest
Определение 'FormData' в этой спецификации.
Живой стандарт FormData определён в XHR spec

Совместимость

BCD tables only load in the browser

Смотрите также