使用ajaxFileUpload插件返回的data由于添加了pre标签无法解析

在使用ajaxFileUpload插件的时候,想必有不少人遇到返回的data由于添加了pre标签无法解析的问题,这里提供三个解决方式。我们找到源码ajaxfileupload.js文件,找到uploadHttpData函数,修改下它的返回值就可以了。

uploadHttpData: function( r, type ) {
        var data = !type;
        data = type == "xml" || data ? r.responseXML : r.responseText;
        if( type == "script" )
        {
         jQuery.globalEval( data );
        }
        if( type == "json" )
        {
            //第一种	
            data = r.responseText;
            var start = data.indexOf(">");
            if(start != -1) {
               var end = data.indexOf("<", start + 1);
               if(end != -1) {
                 data = data.substring(start + 1, end);
               }
            }
            eval("data = " + data);

            //第二种
            data = jQuery.parseJSON(jQuery(data).text());
	   
            //第三种  
            var data =r.responseText;  
            var start = data.indexOf("{");  
            var end = data.indexOf("}");  
            var jsonStr = data.substring(start,end+1);  
            return (jsonStr instanceof Object)?jsonStr:eval("(" + jsonStr + ")");
        } 
        if( type == "html" ) 
        { 
        	jQuery("<div>").html(data).evalScripts(); 
        } 
        return data; 
    },

 
 

Guess you like

Origin blog.csdn.net/peter_qyq/article/details/79882870