Solicitações AJAX para formulários com arquivos (sem iframe)

Uma maneira simples e eficaz de enviar formulários usando o objeto FormData de forma assíncrona. Lida com o upload de arquivos sem o uso de um iframe. Agradável.

Compatibilidade do navegador:
Chrome 7+
Firefox (Gecko) 4.0 (2.0)
Internet Explorer 10+
Opera 12+
Safari 5+

# CoffeeScript
form
= document.getElementById 'form'
method
= form.getAttribute('method') or 'POST'
action
= form.getAttribute('action') or 'foobar.html'
formData
= new FormData form
xhr
= new XMLHttpRequest
xhr
.open method, action, true
xhr
.send formData

Informações básicas sobre FormData:
https://developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest/FormData#Browser_compatibility
https://developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest/FormData/ Using_FormData_Objects