【问题标题】:localStorage.setItem("", ""); not workinglocalStorage.setItem("", "");不工作
【发布时间】:2018-10-27 10:47:02
【问题描述】:

我正在尝试使用 HTML5 本地存储。我填写输入字段并单击“存储”按钮。然后我重新加载页面并清除输入字段。然后我单击“检索”按钮,期望从本地存储中填充 P1 输入字段。但该字段仍为空白。我的错误是什么?

<button onclick="store()" >STORE</button>
<button onclick="retrieve()" >RETRIEVE</button> <br />

<input type = "text" id = "P1"><br />

<script>

function store()
{

localStorage.setItem("S1", "P1");

}

</script>


<script>

function retrieve()
{   

document.getElementById("P1").value= localStorage.getItem("S1");
}

</script>

【问题讨论】:

  • 也许localStorage.getItem("S"); ?
  • 我修好了。还是不行。
  • 您当前的代码在 localStorage 中保存了一个字符串文字,也许您的意思是 document.getElementById("P1").innerHTML 吗?另外,请注意,如果您使用file 协议(例如 Microsoft Edge)加载页面,某些浏览器不提供 localStorage。
  • 呃,没有。 document.getElementById("P1").innerHTML 也是一个字面量。
  • 你的代码有效

标签: html local-storage


【解决方案1】:

所以要将输入值保存到 localstorage,您应该从 id 获取值,然后将其作为第二个参数传递给 setItem

localStorage.setItem("S1", document.getElementById("P1").value);

【讨论】:

    【解决方案2】:

    Html 标签:输入,textarea = 使用“值”,而不是“innerHTML”。

    document.getElementById("P1").value= localStorage.getItem("S1");
    

    【讨论】:

    • 这只是在“retrieve()”的输入字段中显示“P1”。
    • @verlager 这正是您存储的内容
    猜你喜欢
    • 1970-01-01
    • 2017-10-23
    • 1970-01-01
    • 1970-01-01
    • 2011-11-14
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    • 2023-03-24
    相关资源
    最近更新 更多