0

我希望能够添加一个“忽略列表”,并将结果保存在用户浏览器上。

忽略列表保存为 JSON 数组,如下所示:

[{"username":"test_user","date_added":"19/08/13","description":"Don't like this person."},{"username":"test_user_2","date_added":"19/08/13","description":"Don't like this person."}]

添加用户所需的功能如下所示:

function add_to_ignore_list()
{
    var ignored_users = localStorage.getItem("ignore_list"); // returns ignore list
    var username = return_current_username(); // returns test_user3
    var date = return_current_date(); // returns 19/08/13
    var description = prompt("Why do you want to ignore this user?"); // returns desc

    add_to_list = {
        "username" : username,
        "date_added" : date, 
        "description" : description
    };
    ignored_users.push(add_to_list);
    localStorage["ignore_list"] = JSON.stringify(ignored_users);
    $(".user_wrapper").css("background-color","#B40404");
}

由于某种原因它不起作用,我不明白为什么请帮忙。

4

1 回答 1

0

ignore_users 存储为字符串。

当你从 localStorage 中检索它时,你需要在使用它之前对其进行解析。

改变:

var ignored_users = localStorage.getItem("ignore_list");

到(假设它以前已存储):

var ignored_users = JSON.parse(localStorage.getItem("ignore_list"));
于 2013-08-19T15:34:56.103 回答