• 在IE中MVC控制器中返回JSON格式的数据时提示下载


      最近做项目时,视图中用jquery.form.js异步提交表单时,接收的是JSON格式的数据,但是奇怪的是在IE中提示下载文件,其他浏览器中一切正常,下载后,里面的内容就是在控制器中返回的数据。代码如下:
    
    视图中js代码:
    
       $("#formDoUpload").ajaxSubmit({
                        type: "POST",
                        url: "/controller/action/",
                        datatype: "json",
                        success: function (data) {
                          alert(data.Msg);
                        },
                        error: function (XMLHttpRequest, textStatus, errorThrown) {
                        }
                    });
    
    控制器中的代码是:
    
     public JsonResult DoUploadModel(Model3DInfo model)
            {  
    
          //其他代码省略
                    return Json(new ResultJsonInfo() { Result = true, Msg = "保存成功!" });
    
            }
    
    解决方法如下,只需要修改两点,修改过的代码如下:
    
    控制器中:
    
    public JsonResult DoUploadModel(Model3DInfo model)
            { 
    
          //其他代码省略
                return Json(new ResultJsonInfo() { Result = true, Msg = "保存成功!" }, "text/html");
            }
    
    视图中:
    
       $("#formDoUpload").ajaxSubmit({
                        type: "POST",
                        url: "/controller/action/",
                        datatype: "json",
                        success: function (data) {
                               data = JSON.parse(data); 
    
              alert(data.Msg);
                        },
                        error: function (XMLHttpRequest, textStatus, errorThrown) {
                        }
                    });
    
    红色的部分就是我修改的地方,让其返回按照text/html返回,在前台转换一下,一切正常
    

     参考:http://www.cnblogs.com/si-shaohua/p/3729793.html

  • 相关阅读:
    DB开发之oracle存储过程
    DB开发之mysql
    DB开发之oracle
    DB开发之postgresql
    Object-C开发之instancetype和id关键字
    Linux 学习笔记
    Java开发之JDK配置
    Android开发在路上:少去踩坑,多走捷径
    C/C++之Qt正则表达式
    Linux 安全配置指南
  • 原文地址:https://www.cnblogs.com/sophiel/p/6760341.html
Copyright © 2020-2023  润新知