FormData

La interfaz FormData proporciona una manera sencilla de construir un conjunto de parejas clave/valor que representan los campos de un formulario y sus valores, que pueden ser enviados fácilmente con el método XMLHttpRequest.send(). Utiliza el mismo formato que usaría un formulario si el tipo de codificación fuera "multipart/form-data".

También puede pasarse directamente al constructor de URLSearchParams si se quieren generar parámetros de consulta de la misma forma en que lo haría un <form> si usara un envío GET simple.

Un objeto que implementa FormData puede usarse directamente en una estructura for...of, en lugar de entries(): for (var p of myFormData) es equivalente a for (var p of myFormData.entries()).

Nota: Esta característica está disponible en Web Workers.

Constructor

FormData()
Crea un nuevo objeto FormData.

Métodos

FormData.append()
Agrega un nuevo valor a una clave existente dentro de un objeto FormData, o añade la clave si aún no existe.
FormData.delete()
Elimina una pareja clave/valor de un objeto FormData.
FormData.entries()
Devuelve un iterator que permite recorrer todas las parejas clave/valor contenidas en este objeto.
FormData.get()
Devuelve el primer valor asociado con una clave dada en un objeto FormData.
FormData.getAll()
Devuelve un array con todos los valores asociados con una clave dada en un objeto FormData.
FormData.has()
Devuelve un booleano que indica si un objeto FormData contiene una clave determinada.
FormData.keys()
Devuelve un iterator que permite recorrer todas las claves de las parejas clave/valor contenidas en este objeto.
FormData.set()
Establece un nuevo valor para una clave existente dentro de un objeto FormData, o agrega la clave/valor si aún no existe.
FormData.values()
Devuelve un iterator que permite recorrer todos los valores contenidos en este objeto.

Especificaciones

Especificación Estado Comentario
XMLHttpRequest
La definición de 'FormData' en esta especificación.
Living Standard FormData definido en XHR spec

Compatibilidad con navegadores

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome para AndroidFirefox para AndroidOpera para AndroidSafari en iOSSamsung Internet
FormDataChrome Soporte completo 7Edge Soporte completo 12Firefox Soporte completo 4
Notas
Soporte completo 4
Notas
Notas Prior to Firefox 7, specifying a Blob as the data to append to the object, the filename reported in the Content-Disposition HTTP header was an empty string, resulting in errors on some servers. Starting with Firefox 7, the filename blob is sent.
IE Soporte completo 10Opera Soporte completo 12Safari Soporte completo 5WebView Android Soporte completo ≤37
Notas
Soporte completo ≤37
Notas
Notas XHR in Android 4.0 sends empty content for FormData with blob.
Chrome Android Soporte completo 18Firefox Android Soporte completo 4
Notas
Soporte completo 4
Notas
Notas Prior to Firefox 7, specifying a Blob as the data to append to the object, the filename reported in the Content-Disposition HTTP header was an empty string, resulting in errors on some servers. Starting with Firefox 7, the filename blob is sent.
Opera Android Soporte completo 12Safari iOS Soporte completo 5Samsung Internet Android Soporte completo 1.0
FormData() constructorChrome Soporte completo 7Edge Soporte completo 12Firefox Soporte completo 4IE Soporte completo 10Opera Soporte completo 12Safari Soporte completo 5WebView Android Soporte completo ≤37Chrome Android Soporte completo 18Firefox Android Soporte completo 4Opera Android Soporte completo 12Safari iOS Soporte completo 5Samsung Internet Android Soporte completo 1.0
Support of for...ofChrome Soporte completo 50Edge Soporte completo 79Firefox Soporte completo 44IE ? Opera ? Safari Soporte completo 11WebView Android Soporte completo 50Chrome Android Soporte completo 50Firefox Android Soporte completo 44Opera Android ? Safari iOS Soporte completo 11Samsung Internet Android Soporte completo 5.0
appendChrome Soporte completo 7Edge Soporte completo 12Firefox Soporte completo 4
Notas
Soporte completo 4
Notas
Notas Prior to Firefox 7, specifying a Blob as the data to append to the object, the filename reported in the Content-Disposition HTTP header was an empty string, resulting in errors on some servers. Starting with Firefox 7, the filename blob is sent.
IE Soporte completo 10
Notas
Soporte completo 10
Notas
Notas With the "Include local directory pass when uploading files to a server" option enabled, IE will change the filename inside the Blob on the fly. To have direct control of the sent filename, the developer should send the filename as the third parameter value, i.e. formData.append(name, value, filename).
Opera Soporte completo 12Safari Soporte completo 5WebView Android Soporte completo 3
Notas
Soporte completo 3
Notas
Notas XHR in Android 4.0 sends empty content for FormData with blob.
Chrome Android Soporte completo 18Firefox Android Soporte completo 4
Notas
Soporte completo 4
Notas
Notas Prior to Firefox 7, specifying a Blob as the data to append to the object, the filename reported in the Content-Disposition HTTP header was an empty string, resulting in errors on some servers. Starting with Firefox 7, the filename blob is sent.
Opera Android Soporte completo 12Safari iOS Soporte completo 5Samsung Internet Android Soporte completo 1.0
deleteChrome Soporte completo 50Edge Soporte completo 18Firefox Soporte completo 39IE Sin soporte NoOpera Soporte completo SiSafari Soporte completo 11WebView Android Soporte completo SiChrome Android Soporte completo 50Firefox Android Soporte completo SiOpera Android Soporte completo SiSafari iOS Sin soporte NoSamsung Internet Android Soporte completo 5.0
entriesChrome Soporte completo 50Edge Soporte completo 18Firefox Soporte completo 44IE Sin soporte NoOpera Soporte completo 37Safari Soporte completo 11WebView Android Soporte completo 50Chrome Android Soporte completo 50Firefox Android Soporte completo 44Opera Android Soporte completo 37Safari iOS Soporte completo 11Samsung Internet Android Soporte completo 5.0
getChrome Soporte completo 50Edge Soporte completo 18Firefox Soporte completo 39IE Sin soporte NoOpera Soporte completo 37Safari Soporte completo 11WebView Android Soporte completo 50Chrome Android Soporte completo 50Firefox Android Soporte completo 39Opera Android Soporte completo 37Safari iOS Soporte completo 11Samsung Internet Android Soporte completo 5.0
getAllChrome Soporte completo 50Edge Soporte completo 18Firefox Soporte completo 39IE Sin soporte NoOpera Soporte completo 37Safari Soporte completo 11WebView Android Soporte completo 50Chrome Android Soporte completo 50Firefox Android Soporte completo 39Opera Android Soporte completo 37Safari iOS Soporte completo 11Samsung Internet Android Soporte completo 5.0
hasChrome Soporte completo 50Edge Soporte completo 18Firefox Soporte completo 39IE Sin soporte NoOpera Soporte completo SiSafari Soporte completo 11WebView Android Soporte completo SiChrome Android Soporte completo 50Firefox Android Soporte completo SiOpera Android Soporte completo SiSafari iOS Sin soporte NoSamsung Internet Android Soporte completo 5.0
keysChrome Soporte completo 50Edge Soporte completo 18Firefox Soporte completo 44IE Sin soporte NoOpera Soporte completo SiSafari Soporte completo 11WebView Android Soporte completo 50Chrome Android Soporte completo 50Firefox Android Soporte completo 44Opera Android ? Safari iOS Soporte completo 11Samsung Internet Android Soporte completo 5.0
setChrome Soporte completo 50Edge Soporte completo 18Firefox Soporte completo 39IE Sin soporte NoOpera Soporte completo 37Safari Soporte completo 11WebView Android Soporte completo 50Chrome Android Soporte completo 50Firefox Android Soporte completo 39Opera Android Soporte completo 37Safari iOS Soporte completo 11Samsung Internet Android Soporte completo 5.0
valuesChrome Soporte completo 50Edge Soporte completo 18Firefox Soporte completo 44IE Sin soporte NoOpera Soporte completo 37Safari Soporte completo 11WebView Android Soporte completo 50Chrome Android Soporte completo 50Firefox Android Soporte completo 44Opera Android Soporte completo 37Safari iOS Soporte completo 11Samsung Internet Android Soporte completo 5.0
Available in workersChrome Soporte completo SiEdge Soporte completo ≤18Firefox Soporte completo 39IE Sin soporte NoOpera Soporte completo SiSafari Sin soporte NoWebView Android Soporte completo SiChrome Android Soporte completo SiFirefox Android Soporte completo SiOpera Android Soporte completo SiSafari iOS Sin soporte NoSamsung Internet Android Soporte completo Si

Leyenda

Soporte completo  
Soporte completo
Sin soporte  
Sin soporte
Compatibilidad desconocida  
Compatibilidad desconocida
Ver notas de implementación.
Ver notas de implementación.

Ver también