【问题标题】:localStorage in JqueryJquery中的本地存储
【发布时间】:2014-08-16 00:15:25
【问题描述】:

我有以下动态 html

  $('#chat-box').html(                       
     '<p>Enter Your Name</p><input type="text" id="chat-box-name" class="chat-editing" />'
 );

现在我将上面输入框中输入的值存储在localStorage 中,如下所示

 namedata = $('#chat-box-name').val();
    localStorage.setItem('nams',namedata);

然后我在其他 js 文件中获取它,如下所示:

 var nameget = localStorage.getItem("nams");

并将其附加到以下

chatMessages[id].push('<strong>' + nameget + ':   ' + '</strong> ' + value);

但现在的问题是它只被获取一次。

我如何多次获取它?

【问题讨论】:

  • 你好 Ruchya,你没有在这里得到答案吗?stackoverflow.com/questions/20801171/…这是正确而好的答案
  • @PratikJoshi 我不认为这是我需要的:(
  • “不止一次”是什么意思?您可以随时使用localStorage.getItem()
  • @Richa,Ruchya Juhana 是对的,localstorage 可以在需要时多次使用。
  • 如你所见,我循环了 3 次,获取数据 3 次 jsfiddle.net/LH2zB

标签: javascript jquery html


【解决方案1】:

对于存储多个项目,您需要Stringify并在localStorage中存储一个数组

每当您想添加新数据时,重试localStorageparse 中的值,将新数据推入其中并存储回来。

类似于以下内容:

name = $('#chat-box-name').val();
// retrieve stored data or create a blank array if there isn't any info saved yet
var names = JSON.parse(localStorage.getItem('names') || [];
// add to it,
names.push(name);
// then put it back.
localStorage.setItem('names', JSON.stringify(names));

【讨论】:

    猜你喜欢
    • 2016-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多