Я написал простую оболочку, которую вы можете использовать для отправки FormData в IE (и в webkit / gecko это тоже ничего не испортит).Просто включите следующие js, прежде чем пытаться использовать FormData:
var ieFormData = function ieFormData(){
if(window.FormData == undefined)
{
this.processData = true;
this.contentType = 'application/x-www-form-urlencoded';
this.append = function(name, value) {
this[name] = value == undefined ? "" : value;
return true;
}
}
else
{
var formdata = new FormData();
formdata.processData = false;
formdata.contentType = false;
return formdata;
}
}
Теперь просто переключите все новые вызовы FormData () на новый ieFormData () и переключите
processData: false,
contentType: false,
до
processData: formdata.processData,
contentType: formdata.contentType,
cache: false,
и все готово.Конечно, это не позволит вам включать файлы (вам все еще нужен взлом iframe), но это позволит вам имитировать FormData в IE.