在POST中将html表提交为csv

时间:2016-05-18 19:32:29

标签: javascript php html csv

我有一个可编辑的HTML表格,我想将整个表格作为单个csv变量提交给PHP页面。然后PHP页面将解析csv并在后台执行它的操作。我不想在每个表格单元格中使用单个输入,因为我的某些表格很大,而且我很快就会遇到POST超过1000个变量的截断。但是桌面上的csv对我来说并不太容易在后端解析。

所以我正在寻找一个包含这样的表的包或方法

<table id="thetable">
    <tr>
        <td>cellA</td>
        <td>cellB</td>
    </tr>
    <tr>
        <td>cellC</td>
        <td>cellD</td>
    </tr>
</table>

并通过POST作为变量提交,其中服务器端的结果变量类似于

cellA,cellB\n
cellC,cellD

2 个答案:

答案 0 :(得分:0)

看一下fiddle

实现基本上是cols和行上的map函数。您可以使用exportTableToCSV函数来获取所需的字符串,只需删除下载部分即可。

答案 1 :(得分:0)

我的第一个想法是查看表的<tr>,然后在该循​​环内循环遍历<td>值。如果您只是抓住内部值,可以使用.html()

我还没有对此进行测试,因此可能需要略微改动。

所以,让我们说你给你的表一个数据表的id

var data = [];

$('#data-table tr').each(function() {
  $('td', $(this)).each(function() {
     data.push($(this).html());
  });
});

然后使用逗号分隔符连接数组。