1

我正在使用jQuery表單插件上傳圖像在我的MVC項目。ajax提交不工作在IE jQuery表格插件

由於某些原因,IE中的代碼不再有效(以前工作過): 我可以告訴提交成功,圖像上傳成功,並在數據庫中重新編碼,但響應似乎在IE中被破壞。

function showResponse(responseText, statusText, xhr, $form) { 
      $("#loading").hide(); 
      AddImage(responseText.ImageId); 
      buildArray(); 
     } 

我在Firefox,Chrome,Safari上測試過,但所有的工作都很好,但是當我在IE中使用它。

我得到錯誤:

Message: 'ImageId' is null or not an object

任何人以前曾經有過任何類似的問題?

在此先感謝!

+0

你可能想看看這裏我的答案 [http://stackoverflow.com/questions/15425231/ajaxsubmit-and-internet-explorer-issue/20022629#20022629][1] [1]:http://stackoverflow.com/questions/15425231/ajaxsubmit-and-internet-explorer-issue/20022629#20022629 – Vlad 2013-11-16 19:19:43

回答

1

那麼通過將內容類型從「text/plain」更改爲「text/html」就可以解決問題,就是這樣。

OMFG,Internet Explore!

代碼我已經改變了:

return Json(newImage, "text/html", Encoding.Unicode, JsonRequestBehavior.AllowGet); 

希望能幫助別人也是如此。

0

由於有關文件上傳的文檔中說:

需要注意的是,即使當一個數據類型選項設置爲「腳本」是很重要的,並且服務器實際上是有一些JavaScript響應一個多表單提交,響應的內容類型標題應強制爲text/html,否則Internet Explorer將提示用戶下載「文件」。

我不知道它在以前工作過,但文檔很清楚這個問題。