最近做到項目使用JQuery的插件ajaxFileUpload~~~
遇到了非常領人匪夷所思的事情,當圖片上傳成功之后呢(success),它的error事件也被觸發了,情況就是:
后端數據正確返回
前端代碼無誤
代碼如下:
1 $(document).on("change",".JS_uploadFile",function(){ 2 document.domain="bookingctrip.com";//解決圖片上傳跨域問題 3 var ajaxTimeOut=$.ajaxFileUpload({ 4 //處理文件上傳操作的服務器端地址 5 url:serviceHOST("boss")+'/upload/file/uploadCoverImg', 6 secureuri:false,//一般設為false 7 fileElementId:"JS_uploadFile0", 8 timeout:10000, //超時時間設置 9 dataType:'json',//接受數據格式 10 data:formatJson(),//上傳數據內容 11 crossDomain : true, 12 success:function(data){//服務器響應成功時的處理函數 13
14 //為什么success和error都走呢?
15 //在我各種百度,各種嘗試之后發現,ajaxFileUpload這個插件,對於success回調函數里面的js報錯不會在控制台輸出
16 //而是走了它的內部錯誤異常捕獲機制,這個可以在它的源代碼內,進行控制台輸出可以得到答案 17 //這個問題怎么解決呢,那就是保證你的success回調函數里面不會有js的語法錯誤,做好容錯就好了
20
21
22 }, 23 error:function(data, status, e){ //服務器響應失敗時的處理函數 24 25
26
27
28
29
30
31 32 } 33 }) 34 })
如本文所說,你遇到了是我所說的問題的話,請留下你的贊,謝謝啦!
