最近项目涉及到附件上传就头痛,一直在用plupload插件在做。。。ie9偶尔抽风但还是可以的。。。

然后有个需求,表格每行都有个上传按钮,页面多上传按钮。

一、开始的时候,用plupload做的,多实例上传

  将browse_button触发按钮,设置成数组,这种方法也可以实现上述需求,但是ie9没反应,,,我不知道什么也不知道。。。
  打印了一下,ie9 的runtime是html4,然后把上传方式调换了顺序,没用。。。
  上传附件的时候,只执行了FilesAdded方法,不懂不懂
this.pluploader = new plupload.Uploader({
runtimes: 'html5,flash,silverlight,html4', //上传方式
headers: {Accept: 'application/json; charset=utf-8'},
browse_button: arr, //触发按钮
url: this.uploaderUrl,
flash_swf_url: '../common/lib/plupload/Moxie.swf', //flash上传组件的地址
silverlight_xap_url: '../common/lib/plupload/Moxie.xap',
multi_selection:false,//不可选择多个文件同时上传
filters: {
max_file_size: '50mb' //限定文件大小
// prevent_duplicates: true, //是否允许选取重复文件,默认false为允许
}
});

  以后我知道原因会更新的。。。

二、无奈,换了ajaxSubmit来做上传,这个方法很久前被我抛弃了,因为在ie9,ajaxSubmit请求返回数据成功,但是不执行success回调函数。

  今天终于找到原因了,是返回数据的数据类型问题,ie9返回的数据是json字符串,不是对象。心累。

  设置请求参数 dataType:'text',就可以进入success,将数据类型JSON.parse()转成对象就行了。

this.$el.find("form"+'.'+targetClass).ajaxSubmit({
url: this.uploaderUrl,
contentType: "application/x-www-form-urlencoded; charset=utf-8",
dataType:'text',
enctype:"multipart/form-data",
method:"POST",
type:"POST",
data:obj,
success: $.proxy(function (result, status) {
  if(typeof(result)==='string'){
result = JSON.parse(result)
}
if (result.success) {
//上传成功
} else {}
},this),
   error:function(res) {}
});

  

  

ajaxSubmit请求返回数据成功,但是不执行success回调函数的更多相关文章

  1. $.post()返回数据正常,但不执行success回调函数

    今天遇到一特郁闷的问题,如题:$.post()返回数据正常,但不执行success回调函数.说它郁闷是因为没毕业之前就遇到过解决了,却没有记录下来,导致卡了一下午. 像这样,post返回数据正常,但却 ...

  2. ajax请求成功但不执行success-function回调函数的问题

    在success:function(data){}下面加个error:function(){},看看是不是出错了走了error.如果是,说明返回值类型不符合要求. 比如:下面代码返回String类型. ...

  3. ajax执行成功后,在success回调函数中把后台返回的list还原到html的table中

    需求描述:前台通过onclick触发ajax,到后台返回一个list(json格式的),把list插入到html的table中. 思路简介: ̄□ ̄|| 刚开始的时候,是没有思路的,就卡在了,怎么把 a ...

  4. $.ajax请求返回数据中status为200,回调的却是error?

    $.ajax({ type:'get',//使用get方法访问后台 dataType:'json',//访问json格式的数据 url:'http://job.hainan.net/api/recru ...

  5. 关于jquery ajax不执行success回调函数

    检查error函数是否执行,发现错误信息为parseerror,表示jquery解析返回结果时失败,只需要将ajax参数dataType:"json"改为"text js ...

  6. jquery中ajax请求后台数据成功后既不执行success也不执行error解决方法

    jquery中ajax请求后台数据成功后既不执行success也不执行error,此外系统报错:Uncaught SyntaxError: Unexpected identifier at Objec ...

  7. 关于IE浏览器 ajax 请求返回数据不对的问题

    在使用ajax向后台发送请求的时候,在使用ie 进行调试的时候发现根据条件进行查询时,返回的数据与没有根据条件进行查询时数据相同,也就是条件没有发生作用. 经过同事的帮助发现ajax初始化设置时没有c ...

  8. ajax请求返回数据,模板中的数据处理

    /*ajax请求返回数据,模板中的数据处理*/ function QueryGameAsset(){ var new_start_time=$('#new_start_time').val();//开 ...

  9. charles_01_打断点修改接口请求&返回数据

    前言 测试过程中,为了模拟某场景测试,经常需要修改接口请求或者返回数据.可通过抓包工具打断点,实现模拟测试场景.常用的抓包工具charles和fiddler均可打断点mock数据.由于小编安装了cha ...

随机推荐

  1. JDK配置步骤

    1.安装jkd1.6.0以上版本. 2.安装结束后,运行cmd.键入: java -version判断JDK是否安装成功,如下图所示. 3.首先需要到官网上下载JDK这款软件,本人下载的是jdk-6u ...

  2. ajax实现跨域请求

    因为现在一直用的mvc,所以就以mvc来说说ajax跨域提交. 首先说说跨域,简单说就是不同域名访问,比如在aaa.com访问bbb.com. 就拿招聘网站来说,分为两种用户,求职者和企业,求职者端是 ...

  3. 面向对象进阶------>模块 json pickle hashlib

    何为模块呢?  其实模块就是.py文件 python之所以好用就是模块多 模块分三种 :  内置模块 . 拓展模块.自定义模块. 现在我们来认识:内置模块中的 序列化模块和 hashlib  模块 1 ...

  4. css 笔记1

    type="text/css"的作用是什么?它是CSS样式的标记.type->类型,这里是style的属性text/css ->文本/css,即css文本type=&q ...

  5. Ubuntu18.04 vmware环境下配置静态ip

    各种linux系统发行版本配置静态ip方法各不相同,dhcp获取的话ip可能会变动,如果用xshell等工具连接的时候还要改ip,很是麻烦: 参考了网上各种配置Ubuntu18.04配置静态ip的方法 ...

  6. Android 手机 黑域

    黒域地址下载: http://pan.baidu.com/s/1bDYerc 连接手机,选择USB使用方式为“用作MIDI设备“ 0. (手机) 打开黑域,阅读向导1. (手机) 打开黑域,按屏幕提示 ...

  7. php测试工具

    如果是测压力有apache的ab如果要看性能则有xdebug和xhprof.还有linux的strace命令来跟踪程序的执行时的系统调用

  8. mysql_fetch_row,mysql_fetch_array,mysql_fetch_object,mysql_fetch_assoc

    php从mysql中访问数据库并取得数据,取得结果的过程中用到好几个类似的方法,区别及用法值得区分一下,看下面的代码 代码如下: <?php $link=mysql_connect('local ...

  9. There was a problem confirming the ssl certificate: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:661) - skipping

    Could not fetch URL https://pypi.python.org/simple/xlrd/: There was a problem confirming the ssl cer ...

  10. codeforces 407C Curious Array

    codeforces 407C Curious Array UPD: 我觉得这个做法比较好理解啊 参考题解:https://www.cnblogs.com/ChopsticksAN/p/4908377 ...