使用 jQuery.ajax 上傳帶文件的表單遇到的問題
今天幫人看代碼的時(shí)候,遇到一點(diǎn)小問題。使用 jQuery 上傳帶文件的表單時(shí),會(huì)有些問題。
首先,因?yàn)槭褂玫氖?FormData,所以必須在傳入 $.ajax 的參數(shù)中配置 processData: false。
否則將會(huì)拋出 Illegal invocation 的異常,因?yàn)?jQuery 默認(rèn)是會(huì)對(duì)傳入的 data 字段的數(shù)據(jù)進(jìn)行處理的。
官方文檔是這么解釋的:

其次,注意請(qǐng)求的 Content-Type 首部,默認(rèn)是 application/x-www-form-urlencoded; charset=UTF-8,也就是我們通常見的 “a=A&b=B” 這種格式。但使用 FormData 時(shí),就不行了。
對(duì)參數(shù)添加 contentType 字段,將其值設(shè)置為 false 即可。如果 jQuery 版本小于 1.6,則手動(dòng)設(shè)置為 multipart/form-data。具體說明請(qǐng)見文檔說明:

我以前通常都是使用原生的 XMLHttpRequest,所以倒也沒有遇到過這種問題。既然遇到了,就得解決。因此記錄下來,以備日后查找。
以上所述是小編給大家介紹的使用 jQuery.ajax 上傳帶文件的表單遇到的問題,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
jQuery加PHP實(shí)現(xiàn)圖片上傳并提交的示例代碼
這篇文章主要介紹了jQuery加PHP實(shí)現(xiàn)圖片上傳并提交的實(shí)例,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下2020-07-07
Jquery實(shí)現(xiàn)彈出層分享微博插件具備動(dòng)畫效果
此Jquery插件是一款非常實(shí)用的特效,不但有分享功能,還具備了動(dòng)畫效果,提高了用戶體驗(yàn),感興趣的朋友可以參考下哈2013-04-04
jQuery插件dataTables添加序號(hào)列的方法
這篇文章主要介紹了jQuery插件dataTables添加序號(hào)列的方法的相關(guān)資料,需要的朋友可以參考下2016-07-07
jQuery自動(dòng)切換/點(diǎn)擊切換選項(xiàng)卡效果的小例子
我們看到很多網(wǎng)站會(huì)有有錯(cuò)誤404頁(yè)面,當(dāng)頁(yè)面不存存時(shí)就會(huì)提示,然后過幾秒就會(huì)自動(dòng)跳到首頁(yè)了,下面我來給大家舉一個(gè)404錯(cuò)誤頁(yè)面跳到首頁(yè)實(shí)例,有需要的朋友可以參考一下2013-08-08
jQuery之動(dòng)畫ajax事件(實(shí)例講解)
下面小編就為大家?guī)硪黄猨Query之動(dòng)畫ajax事件(實(shí)例講解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-07-07

