javascript - 自动将本地驱动器中的 csv/txt 文件作为表 Javascript 加载到 html 页面中
问题描述
我发现了很多关于如何将 csv/txt 文件加载到 html 页面到表格中的好建议,但是没有一个解决方案对我有用。这是我正在使用的代码。我的两个文件都位于我的 C: 驱动器中,并且基本上想加载这个 csv/txt 文件并将其显示为 index.html 中的表格。非常感谢!
数据.txt
heading1,heading2,heading3,heading4,heading5
value1_1,value2_1,value3_1,value4_1,value5_1
value1_2,value2_2,value3_2,value4_2,value5_2
索引.html
<!DOCTYPE html>
<!-- saved from url=(0014)about:internet -->
<html lang="en">
<html>
<head>
<title>Test</title>
</head>
<body>
<script type="text/javascript">
$(document).ready(function() {
$.ajax({
type: "GET",
url: "data.txt",
dataType: "text",
success: function(data) {processData(data);}
});
});
function processData(allText) {
var allTextLines = allText.split(/\r\n|\n/);
var headers = allTextLines[0].split(',');
var lines = [];
for (var i=1; i<allTextLines.length; i++) {
var data = allTextLines[i].split(',');
if (data.length == headers.length) {
var tarr = [];
for (var j=0; j<headers.length; j++) {
tarr.push(headers[j]+":"+data[j]);
}
lines.push(tarr);
}
}
\\ alert(lines);
}
</script>
</body>
</html>
解决方案
您无法使用 JS 访问本地文件。这将是一个严重的安全漏洞,因为您可以向用户发送恶意网页,该用户会下载他们的文件并将其发送给某人。正如评论中提到的midrizi,您需要一台服务器才能从那里下载文件。
推荐阅读
- python - 去重记录(窗口函数熊猫)
- docker - Makefile 使用不同的选项同时多次运行相同的目标
- javascript - 为 Miller-Rabin 测试创建一个随机 BigInt
- numpy - 有人可以解释这种 numpy 切片行为吗?
- php - 我如何存储用户输入信息并使用 php 存储到管理页面
- typescript - 对 Typescript 函数返回类型感到困惑
- github - 是否有任何自动方式从 GitHub 存储库填充 Moodle 培训?
- python - tfp.optimizer.lbfgs_minimize() 无法识别 previous_optimizer_results 参数
- python - 如何从需要使用scrapy-selenium单击的选项卡中抓取页面
- html - laravel如何将数据从表单传递到控制器