我正在尝试从以下CSV获取数据,该数据在我的本地文件夹中以bids.csv
:
1, 3000
4, 2500
15, 2000
进入数组。我正在使用jquery-csv
库,但没有成功。
这是我的整个代码:
<html><head>
<script type="text/JavaScript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js" ></script>
<script src="jquery-csv.js"></script>
</head>
<body>
<script type="text/javascript">
data = $.csv.toArray('bids.csv');
console.log(data)
</script>
</body></html>
当我进入Chrome的JS控制台时,控制台确实有一个数组,但似乎没有我正在寻找的数据,而是大量的Guff。我只能假设这是jQuery-csv输出的默认数组,并且由于某种原因,它没有读取我的CSV。
此问题发生了,因为您首先需要检索CSV文件,然后将其传递给jQuery-csv
插件。
根据插件文档:
$。csv.toArray(
csv
);[...]
csv
(必需)要转换的CSV数据。
您的问题中共享的代码认为bids.csv
是CSV数据。
假设可以从服务器(Localhost Works)访问该文件:
检索CSV数据的一种方法是发出AJAX获取请求,JQuery's具有内置的功能:jquery.get。
解决方案将是:
<html><head>
<script type="text/JavaScript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js" ></script>
<script src="jquery-csv.js"></script>
</head>
<body>
<script type="text/javascript">
// sent a GET request to retrieve the CSV file contents
$.get( "bids.csv", function( CSVdata) {
// CSVdata is populated with the file contents...
// ...ready to be converted into an Array
data = $.csv.toArray(CSVdata);
console.log(data)
});
</script>
</body></html>
将其作为练习留给读者,以管理可能在文件检索期间或转换期间发生的错误。
如果您不想携带一些沉重的jQuery库,则可能要查看的其他库是:
- 帕帕帕拉斯
- d3-request和d3-dsv
我可以看到您将文件名添加到数组中。您需要使用fileReader读取文件,然后使用toarrays()函数。
您可以在此处看到示例