我正在使用 jquery.csv-0.71.min.js
库加载 csv 文件并将其转换为数组。但是,在加载我的网页时:
<script src="assets/lib/jquery/dist/jquery.min.js"></script>
<script src="assets/lib/bootstrap/dist/js/bootstrap.min.js"></script>
<!-- Jquery-csv -->
<script src="assets/js/jquery.csv-0.71.min.js"></script>
<script>
(function() {
var data;
var url = 'data/data.csv';
function makeRequest(url) {
var xhr = new XMLHttpRequest();
xhr.open('GET', url);
xhr.onload = function() {
if (xhr.readyState === 4 && xhr.status === 200) {/*run code*/}
};
xhr.send(null);
}
})();
data = CSV.toArrays(xhr.responseText);
console.log(data);
</script>
我进入控制台:
ReferenceError: CSV is not defined at 'data = CSV.toArrays(xhr.responseText);'
对我做错了什么有什么建议吗?
感谢您的回复!
更新
我将我的代码放入文档读取函数中,但是,我仍然得到与上述相同的错误。
$(document).ready(function() {
(function() {
var data;
var url = 'data/data.csv';
function makeRequest(url) {
var xhr = new XMLHttpRequest();
xhr.open('GET', url);
xhr.onload = function() {
if (xhr.readyState === 4 && xhr.status === 200) {/*run code*/
}
};
xhr.send(null);
}
})();
data = CSV.toArrays(xhr.responseText);
console.log(data);
});
最佳答案
您的代码在浏览器加载 CSV
脚本之前执行。
用
$( document ).ready(function() {
// PUT YOUR JavaScript CODE HERE
});
这将使浏览器等待,直到您的所有脚本都加载完毕,然后才执行代码。
您可以查看 jquery csv 的文档 here .它说你应该像这样调用方法:
$.csv.toArrays(csv);
关于javascript - 引用错误 : CSV is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26933092/