【发布时间】:2017-08-01 15:21:42
【问题描述】:
我有一个独立的 HTML 页面(没有网络服务器),我正在使用一些 javascript 代码来显示页面中 .csv 文件的内容。
.csv 文件包含我希望显示的用户名列表。我这样做是因为需要更新列表的人对 HTML 一无所知,并且最初认为这是一种更简单的方法。
我找到的所有代码 sn-ps 要么尝试上传文件,然后只显示内容,直到您再次重新加载页面,或者我没有足够的知识来调整代码以使其工作。
任何帮助表示赞赏和 TYIA
安迪
@Barthy 代码与我想要的非常接近:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<style>
table {
border-collapse: collapse;
border: 2px black solid;
font: 12px sans-serif;
}
td {
border: 1px black solid;
padding: 5px;
}
</style>
</head>
<body>
<div id='container'></div>
<script type="text/javascript"charset="utf-8">
var data = 'heading1,heading2,heading3,heading4,heading5\nvalue1_1,value2_1,value3_1,value4_1,value5_1\nvalue1_2,value2_2,value3_2,value4_2,value5_2';
var lines = data.split("\n"),
output = [],
i;
for (i = 0; i < lines.length; i++)
output.push("<tr><td>"
+ lines[i].slice(0,-1).split(",").join("</td><td>")
+ "</td></tr>");
output = "<table>" + output.join("") + "</table>";
var div = document.getElementById('container');
div.innerHTML = output;
</script>
</body>
</html>
但想从 CSV 文件中获取数据
@cars10 csv 文件中的示例:
Heading_1,Heading_2,Heading_3,Heading_4
John, Smith, 29, Male
Andy, Jones, 32, Male
Abbey, Stewart, 35, Female
如果有帮助的话
目前的解决方案:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
table {
border-collapse: collapse;
border: 2px black solid;
font: 12px sans-serif;
}
td {
border: 1px black solid;
padding: 5px;
}
</style>
<script>
window.onload=function(){ with (new XMLHttpRequest()) {
onreadystatechange=cb; open('GET','data.csv',true); responseType='text';send();
}}
function cb(){if(this.readyState===4)document.getElementById('main')
.innerHTML=tbl(this.responseText); }
function tbl(csv){ // do whatever is necessary to create your table here ...
return csv.split('\n')
.map(function(tr,i){return '<tr><td>'
+tr.replace(/\t/g,'</td><td>')
+'</td></tr>';})
.join('\n'); }
</script>
</head>
<body>
<h2>Hey, this is my fabulous "dynamic" html page!</h2>
<table id="main"></table>
</body>
</html>
【问题讨论】:
-
你有示例代码吗? csv 文件到底长什么样?你到底试过什么?我们可以帮助解决具体问题,现在您需要为您完成所有工作。
-
CSV文件的内容有变化吗?
-
@Barthy 添加了我最近的代码,尽管我需要使用名为 data.csv 的 .csv 文件中的内容填充“数据”
-
@NisargShah csv 文件仅在添加新用户时才会更改
-
@madmiddle 所以你唯一的问题是从 csv 文件而不是字符串中获取内容?
标签: javascript html csv