FormData

Esta tradução está incompleta. Ajude atraduzir este artigo.

XMLHttpRequest Nivel 2 adiciona suporte para a nova interface FormData. Objetos FormData fornecem uma forma fácil de construir um conjunto de pares chave/valor representando campos de formulário e seus valores, os quais podem ser facilmente enviados utilizando o metodo send() do XMLHttpRequest.

Ele usa o mesmo formato que um form utilizaria se o tipo de codificação estivesse configurado como "multipart/form-data".

Nota: Para detalhes de como usar o objeto FormData, veja Usando objetos do FormData.

Construtor

FormData()
Cria um novo objeto do FormData.

Métodos

FormData.append
Acrescenta um novo valor em uma chave existente dentro de um objeto FormData, ou adiciona a chave se ela ainda não existir.
FormData.delete
Apaga um par chave/valor de um objeto FormData.
FormData.get
Retorna o primeiro valor associado com uma dada chave de dentro de um objeto FormData.
FormData.getAll
Retorna uma matriz de todos os valores associados a uma determinada chave de dentro de um FormData.
FormData.has
Retorna um valor boleano indicando se um objeto FormData contém um certo par chave/valor.
FormData.set
Define um novo valor para uma chave existente dentro de um objeto FormData, ou adiciona a chave/valor se ele ainda não existir.

Nota: Para ser claro, a diferença entre FormData.set() e FormData.append() é que, se a chave especificada não existir, FormData.set() irá substituir o valor existente por um novo, enquanto FormData.append() irá acrescentar um novo valor no final dos valores existentes. Veja as suas páginas dedicadas para código de exemplo.

Especificações

Especificação Status Comentário
XMLHttpRequest
The definition of 'FormData' in that specification.
Living Standard FormData definido na especificação XHR

Compatibilidade com Browser

Característica Chrome Firefox (Gecko) Internet Explorer Opera Safari
Suporte básico 7+ 4.0 (2.0) 10+ 12+ 5+
append com filename (Yes) 22.0 (22.0) ? ? ?
delete, get, getAll, has, set Behind Flag Não suportado Não suportado (Yes) Não suportado
Característica Android Chrome for Android Firefox Mobile (Gecko) Firefox OS (Gecko) IE Mobile Opera Mobile Safari Mobile
Suporte básico 3.0 ? 4.0 (2.0) 1.0.1 ?

12+

?
append com filename ? ? 22.0 (22.0) 1.2 ? ? ?
delete, get, getAll, has, set (Yes) (Yes) Não suportado Não suportado Não suportado (Yes) Não suportado

Nota: XHR in Android 4.0 envia conteúdo vazio para o FormData com blob.

Nota: Suporte do Chrome aos métodos que não seja append está atualmente atrás da bandeira "Enable Experimental Web Platform Features".

Notas da Gecko

Antes do Gecko 7.0 (Firefox 7.0 / Thunderbird 7.0 / SeaMonkey 2.4), se você especificasse um Blob como o dado a ser anexado ao objeto, o nome do arquivo relatado no cabeçalho HTTP "Content-Disposition" era uma string vazia; isso resultou em erros sendo relatados por alguns servidores. Começando em Gecko 7.0, o nome do arquivo "blob" é enviado.

Veja também

Etiquetas do documento e colaboradores

 Colaboradores desta página: qixmiers, alexandresn, teoli, slackrichard
 Última atualização por: qixmiers,