单元格包含逗号时数据表警告

Datatables warning when cell contains comma

我在 Web 应用程序上有一个功能,允许用户将 csv 文件上传到服务器。选择要上传的 csv 文件后,我使用 javascript 打开文件,然后通过数据 tables 创建一个 table 以便用户可以 preview/confirm 他们想要的上传。

在绘制table之前,我使用this函数将csv文件转换为多维数组,然后将其用作数据集。

我的问题是,当其中一个 csv 值包含逗号时,我收到数据tables 警告:

DataTables warning: table id=csv-data-display-table - Requested unknown parameter '17' for row 6. For more information about this error, please see http://datatables.net/tn/4 - Error object: undefined

下面是导致问题的一些示例数据:

test1,companynamewith'test01,,,,,,,,,,,,,,,,
test2,"companynamewith,test02",,,,,,,,,,,,,,,,
test3,companynamewith/test03,,,,,,,,,,,,,,,,

请注意中间行在第二列中有一个逗号,但它也用引号引起来。

这里是遇到构建数组的函数后的问题记录:

["test2", "companynamewith,test02", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""]

我原以为 Datatables 会足够聪明,可以解析这样的数组,而不会挂在逗号上,因为它在引号内,但也许不是。一旦我从 csv 中删除该行,它就会完全按预期工作并且没有任何警告。任何帮助将不胜感激!

您的数据中的字段数 (17) 与 table 中的列数不匹配(18 或更多)。

请阅读this technical note了解更多信息。

This example with wrong number of columns produces the same error, and this example 具有匹配的列数。