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