资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

如何解决IE下AjaxSubmit上传文件提示下载文件的问题-创新互联

小编给大家分享一下如何解决IE下AjaxSubmit上传文件提示下载文件的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

成都创新互联公司技术团队10年来致力于为客户提供成都网站设计、网站制作、高端网站设计网络营销推广、搜索引擎SEO优化等服务。经过多年发展,公司拥有经验丰富的技术团队,先后服务、推广了1000多家网站,包括各类中小企业、企事单位、高校等机构单位。

springmvc后端:

@RequestMapping(value="scoreFileUpload",produces = "text/html; charset=utf-8") 
  @ResponseBody 
  public String upload(HttpSession session,@RequestParam("file1") MultipartFile file,@RequestParam("paperId") String paperId,HttpServletRequest request) { 
  //获取登录人员的id 
  Integer userId = (Integer) session.getAttribute(BaseConstant.SESSION_UERID_KEY); 
  JSONObject json = new JSONObject(); 
  if (request instanceof MultipartHttpServletRequest) { 
    //获取上传文件的文件名 
      String fileName = file.getOriginalFilename(); 
      String subfix = FileUtils.getFileExtend(fileName); 
    } 
return ""; 
  }

js:端

$('#fileForm').submit(function() { 
    var _businessDetailId = $("#businessDetailId").val(); 
    var _paperId = $("#paperId").val(); 
    var url = "scoreFileUpload?paperId="+_paperId+"&businessDetailId="+_businessDetailId; 
    var optionss = {  
         dataType:"text/html",  
         type:'post',  
         url: url,  
      //  beforeSubmit:showRequest,  
         complete:showResponse, 
         clearForm:false, 
        timeout:  3000000  
    }; 
    //提交表单 
    $(this).ajaxSubmit(optionss); 
    // !!! Important !!! 
    // 为了防止普通浏览器进行表单提交和产生页面导航(防止页面刷新?)返回false 
    return false; 
  });function showResponse(data) { 
  data = JSON.parse(data.responseText); 
  if(data.type != null) { 
  } 
}

如果返回的类型是json,这种问题只在ie下出现过,chrome和firefox则正常。为了解决问题,只能返回text/html。
后端返回的类型不能是json,而是text/html,然后把返回的类型转换为json类型。

以上是“如何解决IE下AjaxSubmit上传文件提示下载文件的问题”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


网站名称:如何解决IE下AjaxSubmit上传文件提示下载文件的问题-创新互联
网页网址:http://cdkjz.cn/article/gdcdh.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220