我正在尝试使用HTML,JS和本地存储来构建表单(更多用于个人学习):
问题:
function display(){
var master_list = [];
var data = document.getElementById('to_do').value;
master_list.push(data);
document.getElementById('form_data').innerHTML += "<li>"+ data +"</li>";
console.log("data is "+ data);
console.log("master list is "+ master_list);
// storeData(master_list);
}
function remove(){
var list = document.getElementById('form_data').innerText;
// console.log("the data is " + list);
document.getElementById('form_data').innerHTML = list.strike();
}
function storeData(master_list){
localStorage.setItem("master_list", JSON.stringify(master_list));
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>The To-do Application</title>
<script src="to_do_app.js" charset="utf-8"></script>
</head>
<body>
<h1>Welcome to the To-Do application</h1>
<label>Enter your to-do item: </label>
<input type="text" id="to_do" placeholder="eg: groceries">
<button onclick=display()> Add </button>
<h3>Added Items are:</h3>
<div id="form_data"></div>
<br>
<button onclick=remove()> Clear All </button>
<!-- <h6>Note: To remove please click on the item</h6> -->
</body>
</html>
答案 0 :(得分:2)
您必须使用master_list
检查localStorage.getItem
项是否已经存在于localStorage中(如果所请求的项不存在,它将自动返回null)
const storeData= master_list => {
let item = localStorage.getItem("master_list");
if ( ! item ) {
localStorage.setItem("master_list", master_list);
return;
}
item = JSON.parse("master_list");
item.concat(master_list); // or master_list.concat(item) depending on your needs
localStorage.setItem("master_list", item);
};