【问题标题】:How to remove localstorage content without a specific key?如何在没有特定密钥的情况下删除本地存储内容?
【发布时间】:2016-08-05 13:47:20
【问题描述】:

我有一个 contenteditable div 作为编辑器,允许用户输入文本并将其保存在标题下。然后将标题名称附加到一个单独的 div,id 为“Contentable”,当用户单击标题时,其内容(用户输入的文本)将显示在编辑器中。我还添加了一个按钮来删除“Contentable”中的任何标题,但我不知道如何从本地存储中删除它们,因为它们没有分配给它的特定键。到目前为止,我只能从 div 中删除单词,而不是实际的本地存储。

    var editElem = document.getElementById("editor1");
$(document).ready(function() {
  $("#savebtn").click(function() {
    var title = prompt("What would you like your title to be?");
    localStorage.setItem(title, editElem.innerHTML);
    titles = localStorage.getItem("titles");

    if (titles == null) {
      titles = [];
    } else {
      titles = JSON.parse(titles);
    }
    titles.push(title);
    localStorage.setItem("titles", JSON.stringify(titles));
    var htmlData = "<a onclick=showData('" + title + "')>" + title + "</a><br>";
    $("#Contentable").append(htmlData);
    var userVersion = editElem.innerHTML;
    localStorage.setItem("userEdits", userVersion);
    editElem.innerHTML = "";
  });
});

function showData(txt) {
  editElem.innerHTML = localStorage.getItem(txt);
}

function loadData()
{ 

  var htmlData=localStorage.getItem("titles");
  htmlData=htmlData.replace(/\[|\]/g, "");

  htmlData=htmlData.replace(/["']/g, "")
  htmlData=htmlData.split(",");

  var arlength=htmlData.length;
  console.log(arlength)
  for(num=0;num<arlength;num++)
  {

    $("#Contentable").append("<a onclick=showData('" + htmlData[num] + "')>" + htmlData[num] + "</a><br>");

  }

}
loadData();
var selected;
$("#Contentable a").click(function(){
  selected=$("#Contentable a").index(this);
  $("#Contentable a").removeClass("selected")
  $(this).addClass("selected");
})

$("a").hover(function() {
    $(this).css('cursor','pointer');
});

$("#remove").click(function(){
  $("#Contentable a:eq("+selected+")").remove();
  //Code to remove from localstorage
})

【问题讨论】:

    标签: javascript jquery html


    【解决方案1】:

    使用这个:

    localStorage.clear();
    

    【讨论】:

    • 请提供一些信息,说明为什么这是答案。即使它可能会解决问题,但如果你告诉他们为什么会解决问题,他们实际上可能会学到一些东西。
    猜你喜欢
    • 2019-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-26
    • 2010-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-16
    相关资源
    最近更新 更多