`
yuwenlin2008
  • 浏览: 124293 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Ajax请求导出Excel的问题

    博客分类:
  • java
阅读更多

Ajax请求导出Excel的问题描述:

前端发起Ajax请求get或post,后台使用Poi生成excel文件,最后用response输出excel文件流。整个调用过程都没有报任何错,excel文件也生成在本地,但浏览器没有弹出文件下载,毫无反应。

 

解决:

开始一直以为是浏览器兼容性,或后台输出文件流代码有问题,调了半天,也都一样,不报任何错。后来上网搜发现在类似的问题,Ajax导出excel没反应,网上有人说不能使用ajax,换成地址重定向location.href就行,一换还真好使。就是ajax请求的问题。

 

总结:

导出excel为什么不能用ajax请求?

因为导出excel,实际上是文件下载,后台需要往前端(浏览器)写文件流的。

而Ajax请求获取数据都是“字符串”,整个交互传输用的都是字符串数据,它没法解析后台返回的文件流,但浏览器可以。

 

Ajax与Form表单提交的区别:

Ajax提交不会自动刷新页面,需要手动处理。

Form表单提交在数据提交后会刷新页面,如果是Post提交,点击刷新浏览器会提示 是否再次提交。

 

分享到:
评论

相关推荐

    asp.net+Ajax实现Excel文件导出

    asp.net+Ajax,实现Excel文件导出

    Jquery ajax请求导出Excel表格的实现代码

    下面小编就为大家带来一篇Jquery ajax请求导出Excel表格的实现代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    ajax原生方法实现导出excel

    后端(如 springboot)直接返回excel的输出流到前端,前端使用 该方法(js原生ajax)进行接收并实现页面的下载

    ajax实现excel报表导出

    利用ajax实现excel报表导出【解决乱码问题】,供大家参考,具体内容如下 背景 项目中遇到一个场景,要导出一个excel报表。由于需要token验证,所以不能用a标签;由于页面复杂,所以不能使用表单提交。初步考虑前端...

    Java表格数据导出Excel&Excel数据导入到数据库

    Java表格数据导出Excel&Excel数据导入到数据库,附有ajaxFileUpload.js文件 ,支持文件异步上传,后台处理请求是springmvc。

    详解如何在Vue项目中导出Excel

    主要介绍了如何在Vue项目中导出Excel,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    Java导出Excel的各种尝试

    近的一个项目比较忙,一直没时间过来跟新博客。过来分享一下在此项目中遇到的一个小问题:导出Excel;相信导出Excel这个功能是特别常见...  1、因为我们整个框架习惯用异步请求,所以一开始我使用ajax异步请求导出Exc

    PHP使用ajax的post方式下载excel文件简单示例

    项目需求,前端发起ajax请求,后端生成excel并下载,同时需要在header头中,带上token验证信息,参考了很多文章,最终实现如下: PHP后端使用base64: $filename = 'demo.xlsx'; $objWriter = \PHPExcel_IOFactory::...

    ssm项目搭建+表格下载

    ssm搭建,双表的增删改查,页面表格的下载,ajax的异步请求,导出excel表格

    JqueryDataTablesServerSide:用于jQuery数据表的Asp.Net Core服务器端,具有分页和Excel导出的多列过滤和排序

    jQuery DataTables Asp.Net核心服务器端该存储库是使用Asp.Net Core作为后端的Jquery ... 由于Jquery DataTables AJAX请求产生的查询字符串太大,服务器将拒绝该字符串。 等待-为什么使用JqueryDataTablesServerSide?

    智能GPT图书管理系统(SpringBoot2+Vue2)、接入GPT接口,支持AI智能图书馆

    UI模块组件库,绘制界面2.4.5Axios发送ajax请求给后端请求数据1.2.1core-js兼容性更强,浏览器适配3.8.3swiper轮播图插件(快速实现)3.4.2vue弹幕插件(实现留言功能)3.2.4表格导出Excel0.3.0表格导出PDFwebpack5中...

    Vue 后台管理类项目兼容IE9+的方法示例

    目前系统是用vue-cli@2.0生成的,UI框架使用的是iview,ajax请求使用的是axois,此外就没有什么特殊的npm包了。 需要解决的兼容问题 经过自己的一番测试,目前主要有以下的兼容问题: 在IE下由于没有promise,所以...

    asp.net知识库

    从SQL中的一个表中导出HTML文件表格 获取數据库表的前N条记录 几段SQL Server语句和存储过程 生成表中的数据的脚本 最详细的SQL注入相关的命令整理 Oracle Oracle中PL/SQL单行函数和组函数详解 mssql+oracle Oracle...

    ExtAspNet_v2.3.2_dll

    -添加定时器控件Timer,用来定时发起AJAX请求。 +2009-09-06 v2.1.0 -Button的Pressed属性值能够正确的反映客户端的变化。 -优化Tree控件的AJAX实现。 +为页面的Form添加autocomplete="off"属性。 -参考...

    ExtAspNet v2.2.1 (2009-4-1) 值得一看

    -添加定时器控件Timer,用来定时发起AJAX请求。 +2009-09-06 v2.1.0 -Button的Pressed属性值能够正确的反映客户端的变化。 -优化Tree控件的AJAX实现。 +为页面的Form添加autocomplete="off"属性。 -参考...

    助手工具为Instagram「Helper Tools for Instagram」-crx插件

    它将AJAX请求发送到Instagram服务器以检索用户列表及其详细信息。这些请求是代表你发送的。有两个选项: 1)一次通话中返回的用户数量。默认值是100,但是调试这个功能后,我意识到Instagram的服务器并不太重视这个...

    史上最好传智播客就业班.net培训教程60G 不下会后悔

    主要功能点:高安全性的用户管理体系、高安全性的异构系统数据导入导出、拼音检索、复合检索、无限级次数据管理、个性化邮件群发、Excel文件导入导出。 技术点 ADO.Net技术应用、SQLServer、MD5安全算法、基于NPOI的...

    asoft签到管理系统tykq3.5_build20110125

    ajaxinc: AJAX应用类(以ajax_命名的四个文件)、附件上传(upload_5xsoft.inc|asoft_upload.asp)和EXCEL导出文件(toexcel.asp)、顶部banner(top.asp)、验证码生成文件(CodeGen.asp、VerifyCode.asp),数据库连接...

    AngelRM_MVC通用权限管理系统-.net

    AngelRM_MVC通用权限管理系统基于asp.net(C#)MVC+前端bootstrap+ztree+lodash+jquery技术,采用bootstrap为前台开发展示UI,Web Api主要负责前端的逻辑交互,再结合jQuery Ajax+Web Api进行提交数据请求。...

Global site tag (gtag.js) - Google Analytics