Jquery的localStorage

时间:2014-06-25 12:22:44

标签: javascript jquery html

我有以下动态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);

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

我如何获取它一次?

1 个答案:

答案 0 :(得分:0)

要存储多个项目,您需要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));