2011-12-08 67 views
0

我使用html5來允許拖放文件,並提交表單數據以及mozilla FormData()api中的多部分/表單數據請求中的文件一個FormData對象的append()函數,我用它附加值和文件)。我使用jQuery.ajax()並將數據設置爲我創建的FormData對象,並將processData標誌設置爲false,將contentType設置爲「multipart/form-data」,並使用beforeSend處理函數調用jqXHR.setReqeustHeader(「Conetent-Type 「,」multipart/form-data「)。但在firebug中,我可以看到請求頭仍然具有Content-Type:text/html。

看來$ .ajax()忽略我的內容類型規範。有其他人成功地使用jQuery.ajax()來處理HTML5的FormData api嗎?

我知道我可以在沒有jQuery幫助的情況下創建自己的XMLHttpReqeust,它也可以工作。但我喜歡像jquery這樣的統一框架。

+0

你可以用jQuery,IIRC設置'contentType:'multipart/form-data''。 – Blender

+0

我做了contentType:「multipart/form-data」和beforeSend事件,我調用了jgXHR.setRequestHeader(「Content-Type」,「multipart/form-data」)。 –

+0

我發現瞭解決問題的另一篇文章。 http://stackoverflow.com/questions/5392344/sending-multipart-formdata-with-jquery-ajax –

回答

1

您應該將contentType設置爲false而不是實際的內容類型。還將processData設置爲falseHere is more details