将HTML表格导出为文本或CSV文件

问题描述:

我有一个将搜索结果输出到HTML表格的PHP搜索页面。我正在使用jQuery插件来允许通过单击列标题对列进行排序。我希望允许用户将搜索结果下载到TXT或CSV文件,但我希望保留排序顺序。有没有办法做到这一点?将HTML表格导出为文本或CSV文件

+3

可能比较容易只需要调用一个服务,传递您的排序顺序 – jchapa 2013-03-01 20:07:41

+0

烨,什么jchapa是说...'?中将sortOrder = ASC&isExport =真' – ficuscr 2013-03-01 20:12:26

+0

但排序是由JavaScript完成的,而不是PHP。 – 2013-03-01 22:39:31

浏览器端(JavaScript)不能产生downlodable文件,因此,你需要从服务器端生成它(在你的情况下,PHP)。你可以保持与JavaScript中使用的最后为了的跟踪和直传它的PHP脚本生成的propper为了

+0

注意事项:您可以使用JavaScript生成一个带有.csv文件内容的新选项卡(或窗口)。但这需要用户自行复制和粘贴。 – 2013-03-01 20:14:57

+0

我可以从Javascript获得排序顺序,但是如何将它传递给PHP脚本? – 2013-03-04 22:15:08

+0

你有一个“下载”按钮或链接?对其执行javascript调用,包括'window.open('generateCSV.php?orderBy ='+ JsVarKeepingOrder)' – 2013-03-05 13:15:00

这是与表工作的好jQuery插件:

http://www.datatables.net/

你也可以使用tabletools与数据表 http://datatables.net/release-datatables/extras/TableTools/index.html

+0

他已经有一个插件,他想导出为CSV。 – mimipc 2013-03-01 20:11:37

+0

这似乎是他正在使用排序插件。数据表插件有更多的功能和功能,包括排序和导出表格到CSV。另外他们提供了大量的文档和例子来帮助他们弄清楚。 – antoni 2013-03-01 20:14:55

这jQuery插件的工作原理是更新的元素,可能是一个与表DIV的文件。

只要得到div innerhtml并用正则表达式解析它。

jQuery中,这将是$(divname)的.html()

+0

我的jQuery不太好;你能否提供更多细节? – 2013-03-01 22:38:23

+0

跟Luis Siquot一起回答比我的完整。 – TtheT 2013-03-02 14:13:40