想得到的效果是,在网页上点击导出按钮,弹出文件保存框,输入文件名并选择路径后保存。可能是由于浏览器的安全机制,一直没能找到合适的解决方案,就采用了其它的一些替代方案。

思路是:后台一般处理程序查询数据库在服务器上生成excel文件,再将文件路径传递给前台,前台生成下载链接

由于ActiveX只有IE支持,不能以ActiveXObject方式打开excel文件,可以在前台可以通过a标签来生成下载链接,也可以直接跳转url或下载文件

 //导出数据
function exportexcel(postdata) {
$.ajax({
url: "../Handler/ExportExcelHandler.ashx",
type: "POST",
dataType: "TEXT",
data: postdata,
success: function (responsedata) {
var url = '../export/' + responsedata;
var elemIF = document.createElement("iframe");
elemIF.src = url;
elemIF.style.display = "none";
document.body.appendChild(elemIF);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("导出失败:" + textStatus);
}
});
}

还有一种方法是使用window.open()方法,但是会被多数浏览器拦截,因此不推荐使用

JS导出网页数据到EXCEL的更多相关文章

  1. js导出table中的EXCEL总结

    导出EXCEL通常是用PHP做,可是项目中,有时候PHP后端project师返回的数据不是我们想要的,作为前端开发project师,把相应的数据编号转换为文字后,展示给用户.可是.需求要把数据同一时候 ...

  2. PHP导出MySQL数据到Excel文件

    PHP导出MySQL数据到Excel文件 转载 常会碰到需要从数据库中导出数据到Excel文件,用一些开源的类库,比如PHPExcel,确实比较容易实现,但对大量数据的支持很不好,很容易到达PHP内存 ...

  3. 用js采集网页数据并插入数据库最快的方法

    今天教大家一个快速采集网站数据的方法,因为太晚了,直接上例子,这里以采集易车网的产品数据为例. 思路:利用js获取网页数据并生成sql命令,执行sql命令把采集的数据插入数据库. 1.用谷歌浏览器或者 ...

  4. .NET使用Office Open XML导出大量数据到 Excel

    我相信很多人在做项目的都碰到过Excel数据导出的需求,我从最开始使用最原始的HTML拼接(将需要导出的数据拼接成TABLE标签)到后来happy的使用开源的NPOI, EPPlus等开源组件导出EX ...

  5. Python:将爬取的网页数据写入Excel文件中

    Python:将爬取的网页数据写入Excel文件中 通过网络爬虫爬取信息后,我们一般是将内容存入txt文件或者数据库中,也可以写入Excel文件中,这里介绍关于使用Excel文件保存爬取到的网页数据的 ...

  6. Django+python实现网页数据的excel导出

    一直都想做一个网页的excel导出功能,最近抽时间研究了下,使用urllib2与BeautifulSoup及xlwt模块实现 urllib2这个模块之前有用过,关于BeautifulSoup模块,可参 ...

  7. js导出表格数据

    考虑到浏览器兼容性问题,采用原生js和后台交互下载网页数据 js: var table = $('.table-panel table'); // Header var tdData ="& ...

  8. 导出数据库数据制成Excel和txt

    引用ICSharpCode.SharpZipLib.dll 1.编写压缩和解压代码 using System; using System.Collections.Generic; using Syst ...

  9. java 对excel操作 读取、写入、修改数据;导出数据库数据到excel

    ============前提加入jar包jxl.jar========================= // 从数据库导出数据到excel public List<Xskh> outPu ...

随机推荐

  1. ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot exe

    在Mysql集群中创建用户时.出现如下错误! mysql> create user 'testuse'@'localhost' identified by '111111'; ERROR 129 ...

  2. 改变jupyter notebook默认初始文件路径 - 关于快捷方式

    jupyter notebook home path changing - %USERFROFILE% and Configure file 如何改变jupyter notebook默认初始文件路径, ...

  3. org.springframework.web.servlet.PageNotFound - No mapping found for HTTP request with URI

    在重启项目中会遇到[org.springframework.web.servlet.PageNotFound] - No mapping found for HTTP request with URI ...

  4. Java,Hello World,《算法》环境搭建中的问题,用 cmd 和 IntelliJ Idea 分别编译和运行 Java 程序

    ▶ IntelliJ idea 下载和安装(http://www.jetbrains.com/idea/) ▶ 新建项目(如图),注意选择 SDK 类型和位置 ● 在 src 目录中新建一个 Pack ...

  5. myeclipse项目 不能打开

    重启电脑后, myeclipse项目 不能打开了, 之前都是好好的!! 出现: Failed to read the project description file (.project) for ' ...

  6. AWS 相关阅读

    http://www.infoq.com/cn/articles/aws-s3-dive-in http://baike.baidu.com/link?url=Jo9OQmjxXZLxyhc6JvaD ...

  7. Oracle查询表结果添加到另一张表中

    转自:https://blog.csdn.net/lx870576109/article/details/78336695 把每一个知识点进行积累:Oracle数据库中将查询一张表的结果添加到另一张表 ...

  8. nginx配置资源缓存

    缓存nginx服务器的静态文件.如css,js,htm,html,jpg,gif,png,flv,swf,这些文件都不是经常更新.便于缓存以减轻服务器的压力. 打开配置文件/usr/local/ngi ...

  9. 把网卡中断绑定到CPU,最大化网卡的吞吐量(转)

    先来看一下问题, 我们通过 ifconfig 查看接口的名称 为 p15p1, 一般机器为 eth0 再通过命令 ➜ ~ cat /proc/interrupts | head -n 1 && ...

  10. node-sass:npm install node-sass --save

    从git上拉下来的项目,要先安装依赖, 再运行. 缺少node-sass:npm install node-sass --save