Я пробовал все и не знаю, что, по-видимому, является проблемой.IE пытается загрузить ответ json при использовании ajaxForm jQuery plugin
Проблема: IE загружает ответ json + перед отправкой не срабатывает.
Я использую IE 11.
Я использую JQuery - плагин ajaxForm. Реализованная загрузка файла с ним. Все работает отлично с хромом и все не с IE.
IE пытается загрузить ответ json и не делает плагин перед функцией.
Код по JS:
var options = {
beforeSend: beforeSubmit,
uploadProgress: progressSubmit,
success: uploadSuccess,
complete: completeSubmmit
};
form.ajaxForm(options);
Фактический запрос производится в ручном щелчком мыши.
('#submitBtn').click();
Я использую контроллер MVC-3, действие HttpPost получает HttpPostedFile. Ответ представляет собой простой ViewModel, содержащий несколько строк.
Я пробовал все следующее, ничего не работало.
Попытки:
Response.Headers.Remove("Content-Type");
Response.Headers.Add("content-type", "application/json");
return Json(vm, "text/html");
return Content(JsonSerializerHelper.Serialize(vm), "text/html");
return Json(vm);
Скрипач:
Chrome Запрос:
Content-Length: 606
Pragma: no-cache
Cache-Control: no-cache
Accept: */*
Content-Type: multipart/form-data; boundary=---- WebKitFormBoundary4ABojutLkBGFbphB
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.8,he;q=0.6,pt;q=0.4,ru;q=0.
Content-Disposition: form-data; name="file"; filename="customersBulk.csv"
Content-Type: application/vnd.ms-excel
Chrome Ответ:
HTTP/1.1 200 OK
Cache-Control: private, s-maxage=0
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/7.5
X-Powered-By: ASP.NET
X-Frame-Options: SAMEORIGIN
Date: Thu, 29 Jan 2015 18:19:47 GMT
Content-Length: 469
-- and the actual Json object. --
IE Запрос:
Accept: text/html, application/xhtml+xml, */*
Accept-Language: he-IL
Content-Type: multipart/form-data; boundary=---------------------------7df28b2e1c126c
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Content-Length: 691
DNT: 1
Host: localhost
Pragma: no-cache
Content-Disposition: form-data; name="file"; filename="MY_PATH\..\customersBulk.csv"
Content-Type: application/vnd.ms-excel
-----------------------------7df28b2e1c126c--
IE Ответ:
HTTP/1.1 200 OK
Cache-Control: private, s-maxage=0
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/7.5
X-Powered-By: ASP.NET
X-Frame-Options: SAMEORIGIN
Date: Thu, 29 Jan 2015 18:15:50 GMT
Content-Length: 558
-- and the Json as well. --
Версии: JQuery Form Plugin
версия: 3.50.0-2014.02.05
Требуется JQuery v1.5 или более поздней версии
Есть идеи?