使用HTML本地存储存储用户特定数据

时间:2015-11-16 02:22:45

标签: jquery html5

在我的网络应用程序中,我想使用本地存储存储特定用户使用的搜索关键字,以便稍后当该用户尝试再次搜索时,我可以显示这些搜索字词。

我区分每个用户的用户名(这是唯一的),每次他们输入和搜索内容时,我都会使用他们的用户名作为密钥,将该字符串用作项目。

$('#search-submit').on('click', function(){

    var keyword = $('#search-input').val();
    localStorage.setItem(username,keyword);
    //....
}

但是每次都会覆盖关键项对。

有什么方法可以存储多个项目,同时保持它们与相同的用户名相关联?

1 个答案:

答案 0 :(得分:0)

检查条目是否存在,如果是,只需附加新数据而不是覆盖它:

function saveKeyword(name, keyword) {
    var exists = false;
    for (var key in localStorage) {
        if (key === name) {
            exists = true;
        }
    }

    if (exists) {
        var temp = localStorage.getItem(name);
        localStorage.setItem(name, temp + ', ' + keyword);
    } else {
        localStorage.setItem(name, keyword);
    }
}