问题描述
我有一个项目用于保存一些我看过的电影。它是一个上市网站。 第1部分(输入面板)我将有一个面板,其中包含一个表格,用于输入影片的规格(名称,类别,演员等)。然后,当我单击提交按钮时,它将在本地保存数据(在csv或txt文件中)。当然,我应该能够将新电影附加到该文件中。 第2部分(查看器)在主页中,我需要在HTML表格中以线的形式查看影片。该表将由我保存的文件中的数据填充(我猜需要Js循环)。如果该主题与我询问的主题不同,那么如果还有其他方法,请管理我如何搜索。我认为我必须学习sql以获取更复杂的数据存储。 这是简单的网站:
<!DOCTYPE html>
<html>
<head>
<title>Film Lister</title>
</head>
<body>
<form>
<input type="text" name="movie-name">
<input type="text" name="movie-category">
<button type="submit">Append the movie to file</button>
</form>
<table id="showcase">
<tr class="movie">
<td class="movie-spec"></td>
<td class="movie-spec"></td>
</tr>
<tr class="movie">
<td class="movie-spec"></td>
<td class="movie-spec"></td>
</tr>
</table>
<script type="text/javascript">
//The part i need help
</script>
</body>
</html>
解决方法
使用JavaScript保存数据非常容易实现:
// Save as File
function download(filename,text) {
var element = document.createElement('a');
element.setAttribute('href','data:text/plain;charset=utf-8,' + encodeURIComponent(text));
element.setAttribute('download',filename);
element.style.display = 'none';
document.body.appendChild(element);
element.click();
document.body.removeChild(element);
}
致电:
var csvContents = "1,2,3,4,5";
download("mydata.csv",csvContents);
您将需要弄清楚csvContents
的构造方式。
我建议您学习jQuery,因为它很容易修改或创建HTML / DOM元素(这是您在这里所需要的)。请注意,这绝对不是网络应用程序专家,而是来自其他域。
注意::如果要附加到文件,则需要权限,而这些权限是您没有从浏览器访问系统的权限。您应该考虑使用数据库。