使用ajaxfileupload.js上传文件成功之后,没有执行success方法

avatar 2017年11月30日19:34:29 6 6721 views
博主分享免费Java教学视频,B站账号:Java刘哥 ,长期提供技术问题解决、项目定制:本站商品点此
首先补充一下上传不成功的问题:必须设置 name 和 id。



今天遇到一个奇怪的问题,在使用SpringMVC和ajax上传文件的时候,因为使用的是ajaxfileupload.js,上传文件成功后,却没有执行 success 和 error 方法。

ajax 代码如下
  1. //上传操作
  2.    //ajax提交信息
  3.    $("#uploadImgBtn").click(function () {
  4.        if($("#file").val() != "") {
  5.            $.ajaxFileUpload({
  6.                type: "POST",
  7.                url:"http://localhost:8090/SpringMVC/upload/uploadFile",
  8.                dataType: "json",
  9.                fileElementId:"file",
  10.                success: function(data, status){
  11.                    alert("上传成功");
  12.                },
  13.                error: function () {
  14.                    alert("上传失败");
  15.                },
  16.            });
  17.        } else {
  18.            alert("请先选择文件");
  19.        }
  20.    })

文件是上传成功的,但是 success 和 error 方法都没执行,甚至写了个 complete 方法也没执行

后来上网查了下。



解决方法如下

修改 ajaxfileupload.js 文件

在 192 行(最底下)加一行代码

data = jQuery.parseJSON(jQuery(data).text());


将之前的 eval( "data = " + data ); 注释掉吧

如图





本文地址:https://liuyanzhao.com/6829.html

  • 微信
  • 交流学习,资料分享
  • weinxin
  • 个人淘宝
  • 店铺名:言曌博客咨询部

  • (部分商品未及时上架淘宝)
avatar

发表评论

avatar 登录者:匿名
匿名评论,评论回复后会有邮件通知

  

已通过评论:0   待审核评论数:0