zoukankan      html  css  js  c++  java
  • 解决在 使用 AjaxFileUploder 插件时,不能获取返回的 json 结果数据

    在MVC  项目 中使用 AjaxFileUploader 这个插件时,在上传图片或文件时,在控制器中返回的是 json数据,可是在 ie,或 googleChrome 浏览器中却出现 返回的json数据下载的情况,针对 这个情况,以下是我自己解决的方法:

    需要特别注意两个地方:

    1. 在返回的 json 数据时,加上 "text/html" 这个参数

     return Json(new
                    {
                        success = true,
                        originalName = OriginFileName,
                        original = guid,
                        min = min,
                        max = max
                    },"text/html");

    2. 在 AjaxFileUploader.js 中的  uploadHttpData: function (r, type)这个方法修改如下:

                //data = eval("data = " + data);
    
                /*++++++++++++++  以下是修改的代码  ++++++++++++++++++++++++++*/
    
                var datastr = r.responseText;
                var newdatastr = datastr.replace("<pre>", "").replace("</pre>", "");
                data = newdatastr;
    
                /*+++++++++++++++  以下是修改的代码 ++++++++++++++++++++++++++*/
    

     3. 在 前端调用的 ajaxFileUpload 方法时,在回调方法 success 时,要对 返回的 json 字符串进行转换成 json 对象:

     success: function (da) {
                //alert("success");
                //alert(da);
                var aaa = JSON.parse(da);
                //alert(aaa.success);
                //alert(aaa.max);
                //alert(!aaa.success);
    
                 if (!aaa.success) {
                     alert(aaa.error);
                 } else {
                     //alert("aaa");
                     $('#imgshow').show();
                     $('#imgshow').append("<img src='" + aaa.max + "' width='100' height='60' />");
                     $("#" + modelimgid).val(aaa.max);
                 }
            },
    

     这样就可以了,上传图片时,如果上传成功就能正确的预览了

  • 相关阅读:
    Docker实战第一天(Docker虚拟化安装)
    Linux下远程桌面连接windows
    运维自动化工具ansible(模块使用)
    运维自动化工具ansible(安装)
    MongoDB学习(二)mongoDB常用命令
    MongoDB学习(一)Centos6.5下安装mongoDB
    AWK用法详解(转载)
    sed用法详解(转载)
    centos6.5部署subversion(svn)
    mysqlAB复制(自动同步)
  • 原文地址:https://www.cnblogs.com/wisdo/p/4390391.html
Copyright © 2011-2022 走看看