Html上的Excel预览

Html上的Excel预览,html,excel,iframe,Html,Excel,Iframe,我想在Html中嵌入Excel表格。我尝试了IFrame,但它下载了文件。在另一种情况下,Iframe上的图像工作良好。但是,Word不起作用。请建议另一种可能的方式在HTML上预览excel工作表。 我的代码是: 有一种简单的方法可以将工作簿嵌入网页,但您必须将其托管在OneDrive上,然后从那里获取嵌入链接: 以下是一个例子: 对于动态上载文件,请使用 演示 场地 谢谢,但是如果没有托管OneDrive,就有可能预览excel。@不幸的是,Jayaswaminathan不是没有自己编写的

我想在Html中嵌入Excel表格。我尝试了IFrame,但它下载了文件。在另一种情况下,Iframe上的图像工作良好。但是,Word不起作用。请建议另一种可能的方式在HTML上预览excel工作表。 我的代码是:


有一种简单的方法可以将工作簿嵌入网页,但您必须将其托管在OneDrive上,然后从那里获取嵌入链接:

以下是一个例子:


对于动态上载文件,请使用

演示

场地


谢谢,但是如果没有托管OneDrive,就有可能预览excel。@不幸的是,Jayaswaminathan不是没有自己编写的。OneDrive解决方案有什么问题?非常简单。是的,很简单。但在我的场景中,没有一个文件可以显示。我们可以动态上传多个文件,上传的文件会在预览中一个接一个地显示出来。你的浏览器不能正常显示xslx文件,对吗?这就是为什么它不能在iframe中显示它。任何解决方案都需要解析内容并将其输出为浏览器可以显示的格式。@Jayaswaminathan您可以将所需的所有工作簿上载到OneDrive,获取所有嵌入的URL,然后根据需要动态更新链接。唯一痛苦的是上传文档。如果您需要一种自动化的方式来对OneDrive执行此操作,我相信这很容易,因为您可以在计算机上安装OneDrive,将文件移动到那里,然后让OneDrive同步文件。OneDrive还有一套API,您也可以利用这些API发挥自己的优势。
function handleFile(e) {


var files = e.target.files, f = files[0];
  var reader = new FileReader();
  reader.onload = function(e) {
    var data = new Uint8Array(e.target.result);
    var workbook = XLSX.read(data, {type: 'array'});

    /* DO SOMETHING WITH workbook HERE */
  };
  reader.readAsArrayBuffer(f);
}
input_dom_element.addEventListener('change', handleFile, false);