ajaxfileupload.js回调异常
来源:互联网 发布:数码网络侦探 攻略 编辑:程序博客网 时间:2024/06/13 14:29
上传文件时采用了ajaxfileupload.js来做处理,但是数据上传成功之后原本写好的回调函数并未被调用,经过分析与查证,确认是ajaxfileupload.js内部方法问题,现将解决方案贴出如下:
$.ajaxFileUpload( { url:"../empty, secureuri:false, fileElementId:"file_ele_id", dataType: "text", success: function (data,status){ var rx = new RegExp("<pre.*?>(.*?)</pre>","i"); var am = rx.exec(data); data = (am) ? am[1] : ""; eval("data = " + data ); alert(data.msg); if(status){ CloseWindow("ok"); } }, error: function (jqXHR, textStatus, errorThrown) { alert(errorThrown); CloseWindow(); } });}原回调异常方案如下:
$.ajaxFileUpload( { url:"../em, secureuri:false, fileElementId:"file_ele_id", dataType: "json", success: function (data,status){ alert(data.msg); if(status){ CloseWindow("ok"); } }, error: function (jqXHR, textStatus, errorThrown) { alert(textStatus); CloseWindow(); } });}异常原因分析为ajaxfileupload.js内以下代码对type为json时对data的不当处理引起,因为后台传至界面的json数据已经被<pre style=">json<pre/>给围起来了,eval()函数在处理data时抛出了异常并在ajaxfileupload.js内部进行了try{}catch(){}为error,所以即便后台返回的是处理成功的json,回调函数依然走的是error
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" ) { eval("data = " + data ); // eval('(' + data + ')');//eval("\""+data+"\""); } // evaluate scripts within html if ( type == "html" ) jQuery("<div>").html(data).evalScripts(); //alert($('param', data).each(function(){alert($(this).attr('value'));})); return data;}
阅读全文
1 0
- ajaxfileupload.js回调异常
- ajaxFileupload.js
- ajaxFileUpload.js
- ajaxfileupload.js
- 使用ajaxFileUpload.js 上传了文件之后获取不到文件,但是回调了succcess函数。
- ajaxfileupload.js源码
- ajaxfileupload.js 兼容性问题
- 使用aJaxFileUpload.js
- ajaxfileupload.js上传文件
- ajaxfileupload.js的使用
- ajaxfileupload.js bug修复
- ajaxFileUpload.js插件使用
- JQuery插件:ajaxFileUpload.js
- ajaxfileupload.js结合低版本jquery报异常:TypeError: jQuery.handleError is not a function
- 关于ajaxfileupload.js的使用
- ajaxfileupload.js异步上传图片
- ajaxFileUpload.js 插件的demo
- jquery.ajaxfileupload.js 问题汇总
- (*:update) Conflicting cross-version suffixes in: org.scala-lang.modules:scala-xml
- caffe下relu_layer.cu详解
- Django与数据库
- Markdown的一些常用语法
- 禁止apache显示目录索引的常见方法
- ajaxfileupload.js回调异常
- 机器学习之神经网络
- 继承
- python CRC16检验
- GBDT(MART) 迭代决策树入门教程 | 简介
- Unity中使用的向量
- Django初探(二) 分类:网络编程Django
- JFTabView 标签滑动视图封装
- Git常用命令记录