【问题标题】:Remove localstorage [duplicate]删除本地存储[重复]
【发布时间】:2013-11-15 21:38:37
【问题描述】:

所以我有一个文本字段、一个用于将文本添加到本地存储的按钮和一个用于删除它的按钮。

这是我的脚本:

function save() {
    var fieldValue = document.getElementById('textfield').value;
    localStorage.setItem('text', fieldValue);
}


function load() {
    var storedValue = localStorage.getItem('text');
    if(storedValue) {
        document.getElementById('textfield').value = storedValue;
    }
}


function remove() {

    document.getElementById('textfield').value = '';
    localStorage.removeItem('text');

}

保存和加载功能都可以工作,但是当我单击“删除按钮”时,它会删除按钮本身而不是本地存储值。

【问题讨论】:

  • 这听起来很古怪...代码看起来不错。你能设置一个小提琴并包含你正在使用的html吗?
  • 同意@KenFyrstenberg——除非我看到小提琴,否则我称之为恶作剧!
  • 小提琴或者它没有发生

标签: javascript html local-storage


【解决方案1】:

remove() 似乎是 Javascript 中的保留函数名。例如,如果您使用onclick 调用它,它只会删除元素而不是调用定义的函数。

我创建了一个小提琴来演示这个问题:http://jsfiddle.net/mW644/

如果您使用<button onclick="alert(remove)">Test</button> 检查函数,您会得到一个本机函数,而不是您定义的函数:

function remove() {
    [native code]
}

将 remove() 重命名为其他名称,它会正常工作。

【讨论】:

  • .remove() 是一种从 DOM 中删除元素的 jQuery 方法,所以这可能是他加载了 jQuery 的结果(尽管他没有说他是否包含它,所以我我不确定)。
  • 我的小提琴没有加载 jQuery,它仍然会发生。它实际上是一个原生函数。
  • 非常感谢,不知道!
猜你喜欢
  • 1970-01-01
  • 2016-04-24
  • 1970-01-01
  • 2014-07-08
  • 2021-05-28
  • 2019-07-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多