使用 jquery-csv,无论我访问哪个 csv 文件,总是得到相同的错误



我有一些jquery文件,我正在使用它来自定义Django管理员。我想使用 Google 的 jquery-csv 从本地 csv 文件中提取代码表。

function getCodeTable() {
$.ajax({
url: "admin/js/custom/Sample100.csv",
aync: false,
success: function (csv) {
csv_as_objects = $.csv.toObjects(csv);
},
dataType: "text",
complete: function () {
return csv_as_objects;
}
});
}

原始csv文件由Postgres创建。当我将其放入我的项目中并尝试访问它时,出现此错误:

CSVDataError: Illegal quote [Row:3]

认为csv有问题,我在Notepad++中打开它以查找问题,但是没有看到。

我已经通过 https://csvlint.io/运行了该文件,结果是有效的。然后我下载了同一文件的标准化CSV。当我打开它并查看它时,它所做的唯一更改是在主键周围放置引号的位置。我把它放在我的项目中并运行,但返回相同的错误:

CSVDataError: Illegal quote [Row:3]

我认为 Postgres 以某种方式给了我一些格式不正确的 csv 文件,所以我 https://www.appsloveworld.com/sample-csv-file/访问了这个网站并下载了一个名为Sample100.csv的 csv 文件,看看它是如何工作的。

返回相同的错误:

CSVDataError: Illegal quote [Row:3]

所以现在似乎我输入的任何 csv 文件都会返回相同的错误。我不知道这是否是一个jquery-csv库问题(怀疑它(,或者我的代码中是否缺少某些内容

代码表的前 5 行.csv:

"codecategoryid","codecategorydesc","codetypeid","codetypedesc"  
15,"Address Types",60,"Mailing Address"  
15,"Address Types",59,"Physical Address"  
15,"Address Types",61,"PO Box"  
8,"Agricultural Employee Types",22,"Distribution Worker"

我的代码表的前 5 行标准化 CSV .csv从 https://csvlint.io/下载:

"codecategoryid","codecategorydesc","codetypeid","codetypedesc"  
"15","Address Types","60","Mailing Address"  
"15","Address Types","59","Physical Address"  
"15","Address Types","61","PO Box"  
"8","Agricultural Employee Types","22","Distribution Worker"  

从 https://www.appsloveworld.com/sample-csv-file/下载的 Sample100.csv的前 5 行:

Serial Number,Company Name,Employee Markme,Description,Leave  
9788189999599,TALES OF SHIVA,Mark,mark,0  
9780099578079,1Q84 THE COMPLETE TRILOGY,HARUKI MURAKAMI,Mark,0  
9780198082897,MY KUMAN,Mark,Mark,0  
9780007880331,THE GOD OF SMAAL THINGS,ARUNDHATI ROY,4TH HARPER COLLINS,2  

如果您尝试在Mac上使用jQuery CSV数据解析器,它可能会给您此错误:

CSVDataError: Illegal quote [Row:3]

原因可能是保存在Mac上的CSV文件和Mac上的行尾使用特殊字符,解析器会"阻塞"它们并吐出此错误。

我能找到的唯一解决方案是从这里

如果你想要一个快速而肮脏的修复。只需添加一个"state"对象文字,其中rowNum和colNum都初始化为0。

相关内容

  • 没有找到相关文章

最新更新