jquery 我的localStorage未保存任何内容

64jmpszr  于 2023-03-01  发布在  jQuery
关注(0)|答案(2)|浏览(152)

所以这就像一个待办事项列表网站,但当我刷新什么都没有保存!
下面是HTML和Javascript:

localStorage.setItem('myInput'); {
  var save = localStorage.getItem("myInput");
}
localStorage.setItem('myInput2'); {
  var save = localStorage.getItem("myInput2");
}
localStorage.setItem('myInput3'); {
  var save = localStorage.getItem("myInput3");
}
<div class="modal-content">
  <span class="close">&times;</span>
  <div id="myDIV" class="header">
    <h2>Add a task</h2>
    <input type="text" id="myInput" placeholder="Write a task...">
    <input type="text" id="myInput2" placeholder="Estimated time...">
    <input type="text" id="myInput3" placeholder="Week...">
    <span onclick="newElement()" class="addBtn" value="save" onClick="save()">Add</span>
  </div>
</div>
</div>


<ul id="tehtavat">
</ul>

我还在控制台中收到此错误:
index.html未捕获类型错误:无法对"存储"执行"setItem":需要2个参数,但只存在1个。

x6h2sr28

x6h2sr281#

当你想把值保存到本地存储时,你需要传递一个值作为第二个属性。第一个是键。

localStorage.setItem('myInput', myValue);

将本地存储看作key / value对的列表。
此外,您希望在每次数据更改时手动将数据写入本地存储,因此假设keyup事件:

document.getElementById('myInput').addEventListener('keyup', function(event){
    localStorage.setItem('inputValue', event.target.value);
})

我可以想象在加载时,你想把这个值带回来;

var inputValue = localStorage.getItem('inputValue');

if(inputValue) {  //just check if there's value saved
    document.getElementById('myInput').value = inputValue;
}

请考虑到我在没有测试的情况下就把代码打出来了,所以可能会有一些错别字。你也可以试着自己解决错别字。

uqcuzwp8

uqcuzwp82#

想要存储字符串吗?存储方式如下:

  • localStorage.setItem("myInput", "valueFromInput")

就像这样:

  • localStorage.getItem("myInput")

要存储数组或对象吗?按如下方式存储:

    • 注意 *:localStorage只能存储字符串,因此我们需要在存储之前将数组转换为字符串。
var data = JSON.stringify('{myData: "myData"}');
 localStorage.setItem("myInput", data)

获取如下数据:

  • var data = JSON.parse(localStorage.getItem("myInput"))

相关问题