Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Javascript将表导出到MS Excel,在MS Edge上不工作_Javascript_Html_Excel_Microsoft Edge - Fatal编程技术网

使用Javascript将表导出到MS Excel,在MS Edge上不工作

使用Javascript将表导出到MS Excel,在MS Edge上不工作,javascript,html,excel,microsoft-edge,Javascript,Html,Excel,Microsoft Edge,我一直在使用与本文所示相同的代码将一个表格从HTML导出到Excel,它在许多浏览器中运行得非常好 当我在全新的MS Edge web浏览器上测试它时,问题来了,它会打开一个新的空白选项卡,就是这样。没有控制台错误,没有弹出警告,什么都没有。正如我所说的,有一种方法可以处理导出,从而在IE中脱颖而出 所以我想知道你们中是否有人知道支持新的Microsoft Edge浏览器的类似技巧 谢谢。您目前无法在Internet Explorer或Microsoft Edge中导航到数据URL。但是,可以使

我一直在使用与本文所示相同的代码将一个表格从HTML导出到Excel,它在许多浏览器中运行得非常好

当我在全新的MS Edge web浏览器上测试它时,问题来了,它会打开一个新的空白选项卡,就是这样。没有控制台错误,没有弹出警告,什么都没有。正如我所说的,有一种方法可以处理导出,从而在IE中脱颖而出

所以我想知道你们中是否有人知道支持新的Microsoft Edge浏览器的类似技巧


谢谢。

您目前无法在Internet Explorer或Microsoft Edge中导航到数据URL。但是,可以使用下载或保存blob

下面我为您准备了一个基本示例:

(函数(){
//从我们的HTML表生成我们的CSV字符串
var csv=tabletosv(document.querySelector(“站点”);
//创建一个CSV Blob
var blob=新blob([csv],{type:“text/csv”});
//确定下载时采用的方法
如果(navigator.msSaveOrOpenBlob){
//适用于Internet Explorer和Microsoft Edge
msSaveOrOpenBlob(blob,“output.csv”);
}否则{
//尝试使用另一种方法
var anchor=document.body.appendChild(
document.createElement(“a”)
);
//如果支持[download]属性,请尝试使用它
如果(锚定中的“下载”){
anchor.download=“output.csv”;
anchor.href=URL.createObjectURL(blob);
anchor.click();
}
}
函数tabletosv(表){
//我们将选择'slice'来创建数组
var slice=Array.prototype.slice;
返回slice.call(table.rows).map(函数(行){
返回slice.call(row.cells).map(函数(cell){
返回“t”。替换(“t”,cell.textContent);
}).加入(“,”);
}).join(“\r\n”);
}
}());
网上考试:

您需要执行一点功能检测,以查看
msSaveBlob
msSaveOrOpenBlob
是否可用。如果是,使用它们,如果不是,你可以沿着另一条路线前进


我希望这会有所帮助。

是否可以使用excel扩展名(xls、xlsx)保存该文件?