日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ajaxfileupload 返回值_ajaxFileUpload上传文件返回json无法解析

發布時間:2023/12/9 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ajaxfileupload 返回值_ajaxFileUpload上传文件返回json无法解析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近做一個文件上傳的功能,還要綁定數據傳輸到后臺,為了不影響前端的體驗,采用ajax發送請求。找了一些資料,網上的用ajaxupload這個插件。

但是無論成功還是失敗都是執行的error的回調函數。后臺我采用springmvc返回的json,在前段debug后發現,原來返回的雖然是json格式,但是它又包裝了一層。

{"retcode":"0"}

沒辦法查了好多資料發現有的大牛也遇到了這個問題,有的還琢磨了好幾天。看了一下github上的源碼是6年前上傳的,發現有一個大牛2016.11.15號對源碼修改了下解決了這個問題。uploadHttpData: function( r, type ) {

var data = !type;

data = type == "xml" || data ? r.responseXML : r.responseText;

// If the type is "script", eval it in global context

if ( type == "script" )

jQuery.globalEval( data );

// Get the JavaScript object, if JSON is used.

if ( type == "json" )

{

// If you add mimetype in your response,

// you have to delete the '

' tag.

// The pre tag in Chrome has attribute, so have to use regex to remove

var data = r.responseText;

var rx = new RegExp("

(.*?)","i");

var am = rx.exec(data);

//this is the desired data extracted

var data = (am) ? am[1] : ""; //the only submatch or empty

eval( "data = " + data );

}// evaluate scripts within html if ( type == "html" ) jQuery("

").html(data).evalScripts(); //alert($('param', data).each(function(){alert($(this).attr('value'));})); return data; }

估計原作者對代碼估計也沒維護了。我最后還找到了大牛們的另一個解決辦法:在ajaxFileUpload.js中的uploadHttpData方法中修改對json的判斷:

這里只是記錄下防止自己忘記哈

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的ajaxfileupload 返回值_ajaxFileUpload上传文件返回json无法解析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。