温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

上传文件中使用ajaxfileupload.js碰到的问题

发布时间:2020-07-30 16:23:34 来源:网络 阅读:1022 作者:hmy362322 栏目:开发技术

在做上传图片时需要用到异步上传值服务器,当时选用了ajax的ajaxfileupload可以上传。 
这里写下踩过的坑 
1:使用$.ajaxFileUpload({});函数,网页报错,提示没有这个函数。 
解决:导入ajaxfileupload.js文件。简单 
2:上传成功了没有执行回调,即$.ajaxFileUpload({ 
url:”, //你处理上传文件的服务端 
type: ‘POST’, 
fileElementId:’file’,#文件在html中的id 
dataType: ‘json’, 
data:{需要上传的数据},#可以省略 
success: function(data) { 
}, 
failure: function(data) { 

});中success函数。上网查,说是需要修改ajaxfileupload.js的源代码。好吧试试 
在uploadHttpData: function( r, type ) { 
var data = !type; 
data = type == “xml” || data ? r.responseXML : r.responseText; 
if ( type == “json” ) 
eval( “data = ” + data ); 
}, 
看eval函数代码 
function eval(s){return new Object();}; 
什么都没有返回,注释掉,网上说换成这个

   if ( type == "json" ) { data = data.replace("<pre>","").replace("</pre>","");}
这个data.replace("<pre>","").replace("</pre>","");replace是因为文件上传的话返回的json字符串会带有<pre>开头的一串字符,但是我没有得到过哦。所以可以这样写:
if ( type == "json" ) { data = data;}
这样就可以执行回调函数了。

3:上传的文件大于2M报错,提示文件太大。哎呀,现在的图片那个不是2,3M的,矫情! 
解决:在struts文件里加上这个。500M都可以了。哈哈(这里有很多种解决办法,可以上网搜索哦) 
好了,结束手工! 
附上ajaxfileuploa.js文件(修改后的)http://download.csdn.net/detail/u011575570/9241787


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI