【发布时间】:2021-08-11 05:09:59
【问题描述】:
我正在使用 onClick 函数返回数组数据以存储在 localStorage 上以显示表中的行。 但是,每当触发 onClick 按钮时,它都会覆盖以前的数据表。任何帮助将不胜感激!
JavaScript:
function storeData(arr){
localStorage.setItem("empObj",JSON.stringify(arr));
}
function displayData(){
let empJson = JSON.parse(localStorage.getItem("empObj"));
var tableContent =""
var startTable = "<table border=1 width=200 align=center><tr><th>Item</th><th>Price</th></tr>"
tableContent = "<tr><td>"+empJson[0]+"</td><td>"+empJson[1]+"</td></tr>"
var endTable = "</table>"
tableContent = startTable+tableContent+endTable
document.getElementById("main").innerHTML=tableContent;
}
HTML:
<button type="button" class="btn btn-block btn-outline-primary"
onClick="return storeData(['itemNumber1','$1,000'])">Add</button>
<button type="button" class="btn btn-block btn-outline-primary"
onClick="return storeData(['itemNumber2','$900'])">Add</button>
为了显示表格,我使用了 onload 函数
window.onload = function() {
displayData();
}
【问题讨论】:
-
嗨,杰森,欢迎来到 StackOverflow!您能否提供更多关于您在 localStorage 键
empObj中存储的数据(和数据结构)的信息? -
您的代码只是将一个元素添加到
localStorage并一次又一次地显示相同的项目
标签: javascript html json