使用JQuery读取Excel数据

时间:2011-03-31 01:30:47

标签: javascript jquery html5 excel firefox

我想知道如何使用任何内容从多工作表MS Excel 2003文件中读取数据,但是jquery。我已经阅读了几个PHP / JQuery,ActiveX等解决方案......但是我想用 JQuery ONLY 来做。知道这是如何工作的吗?

我找到了http://plugins.jquery.com/project/csv2table,这几乎完美地完成了这项工作,除了我必须将每张纸张分成CSV文件这一事实。我想删除该步骤并直接从Excel文件中读取它。提前感谢您的帮助!

BTW - 我在FireFox 4中工作,不需要跨浏览器支持。

5 个答案:

答案 0 :(得分:8)

Office Web Components通过javascript(或vb)为excel文档提供api。它们的文档记录很少,但对于Intranet类型的应用程序,它们可以完成工作。我已经将它们用于IE6中的数据透视表功能,并且不知道它是否适用于Firefox。

http://en.wikipedia.org/wiki/Office_Web_Components

http://www.microsoft.com/downloads/en/details.aspx?FamilyID=beb5d477-2100-4586-a13c-50e56f101720&DisplayLang=en

答案 1 :(得分:4)

实际上,如果没有OWC和这种奇特的插件,它是可能的,但是需要手动工作。 另一件事 - 它只在本地机器上可行 - 不要指望你的工作表就像一个Web服务器。另一种可能性是在网络共享上进行设置,但我不确定它在沙盒中的工作方式如何。

编辑:我知道问题是关于Excel 2003格式的。但是,仍然有Google查询有关相同的功能,现在人们正在使用MS Office版本2010/2013。所以,我相信答案对读者有益。

所以,这是:

  1. 使用zip.js可以打开压缩文件。这意味着您可以从Office 2007(.docx,.xlsx等)开始打开MS Office文件。较旧的office文件具有自定义格式,您无法将其作为压缩文件读取
  2. 打开文件后,可以使用包含各种文件的分层文件夹结构。数据本身位于 /xl/worksheets/[worksheet name].xml /xl/sharedStrings.xml 中,这意味着您必须使用XML解析器将其挖掘出来并在之后进行关联。
  3. 幸运的是,XML解析器在jQuery中可用:$.parseXML('...')
  4. 玩得开心;)

答案 2 :(得分:3)

我意识到这个问题已经过时了,但我有一个基本的解析器支持您要求的大部分内容:http://oss.sheetjs.com/js-xls/

答案 3 :(得分:0)

您可以在npm网站上找到nodeJS的一些工具(库)。 有一个名为excel的读取xlsx文件,并且有一个名为office的大多数ms office文件。 现在既然它都是Javascript,你应该能够下载,并查看源代码以找到在客户端集成它的方法。 希望有所帮助

答案 4 :(得分:-2)

转换CSV文件中的excel以从Jquery读取。使用Jquery插件CSV2Table

<div id="view1"></div>
<script type="text/javascript">
$(function(){
    $('#view1').csv2table('Path/Anil.csv');
});
</script>