Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.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 下载CSV客户端_Javascript_Flash_Csv_Download_Data Uri - Fatal编程技术网

Javascript 下载CSV客户端

Javascript 下载CSV客户端,javascript,flash,csv,download,data-uri,Javascript,Flash,Csv,Download,Data Uri,我正在尝试实现一种跨浏览器方法,以允许将HTML表格数据下载到excel工作表中。我理解这在以下几个方面是可能的: 在服务器端执行此操作,并让服务器使用正确的mimetype文件进行响应,从而强制浏览器要求用户下载excel工作表。这根本不是最优的,因为我们有包含大量数据的表,每个客户机最初都会在浏览器中显示数据,然后下载数据,我们希望避免多个请求冲击服务器 在客户端使用javascript将HTML表转换为CSV,然后使用DataURI下载生成的数据。这也是不可能的,因为我们需要支持IE8和I

我正在尝试实现一种跨浏览器方法,以允许将HTML表格数据下载到excel工作表中。我理解这在以下几个方面是可能的:

在服务器端执行此操作,并让服务器使用正确的mimetype文件进行响应,从而强制浏览器要求用户下载excel工作表。这根本不是最优的,因为我们有包含大量数据的表,每个客户机最初都会在浏览器中显示数据,然后下载数据,我们希望避免多个请求冲击服务器

在客户端使用javascript将HTML表转换为CSV,然后使用DataURI下载生成的数据。这也是不可能的,因为我们需要支持IE8和IE9,它们对数据URI有一些限制。我已经尝试过了,可以确认它在firefox、chrome和IE10及以上版本中对我们有效。我的解决方案基于以下帖子:

我们使用的是一个非常棒的库,它有tabletools插件——这可以使用flash插件实现客户端下载。然而,这也是不可能的,因为我们已经对datatables库进行了大量扩展,并在多个产品中使用它,以及我们在requirejs中的混乱设置,这意味着插入tabletools库几乎是不可能的,我们必须确保它是我们正在开发的产品的本地安装,并且不包括跨共享代码库的库,不幸的是,这就是我们的扩展datatables库所在的位置,并且requirejs在该设置中做得不好

最后,我们可以使用downloadify,这是该库的基础。这是一个跨浏览器的HTML表格,您可以选择一个文件名下载它


这对我们来说似乎是一个很好的选择,但是我想知道是否有人知道任何其他工具可以获得相同的结果,首先,作为一个针对过时代码的故障保护,downloadify已经有4年历史了,我们还想看看还有什么更好的库可以区分HTML5支持和使用flash支持作为后备方案,或者支持移动/平板平台的库。奇怪的是,在我所有的搜索中,我只找到了一个适合我们目的的工具

我快速浏览了dowloadify,发现它只有8个月大。显然还包含一个使用HTML5动态生成csv的示例代码。@Aralicia Staircar看起来不错,HTML5下载的文章也是一本不错的读物,但我不能使用,因为我需要IE8和IE9支持。但谢谢你的楼梯车,我一定错过了那个。