0

所以我想我终于想通了,但不幸的是它是最后一块拼图。

基本上我有一个待办事项列表,当我将其标记为完成时,它会在列表项中划出一条线并更改背景颜色,它工作正常。但是当我刷新页面时,首选项消失了:

$("section#todo_list > section.todo_item > span#complete").live("click", function() {
        $(this).parent().css({'text-decoration' : 'line-through', 'background' : '#e1ffff'});
        todo_list = JSON.parse(localStorage.todos)
        item = todo_list[id];  
        localStorage.setItem($(this).parent().attr(item));                                            
    }); 

这是我对代码的最佳猜测,我认为可以做到但没有运气,我错过了什么?

4

3 回答 3

1

localStorage.setItem需要一个键和一个值,例如setItem(id, $(this).parent().attr(item)).

我也无法判断您尝试以哪种格式存储数据 - 看起来您正在读出整个列表,但您保存了单个项目。

正如@RPM 所建议的那样,如果您将其作为 JSON 读取,则应将其另存为 JSON。

于 2013-02-28T04:12:29.767 回答
0

这是您在 localStorage 中设置的方式:

LocalStorage.itemName = "物品";

于 2013-02-28T04:09:27.467 回答
0
localStorage.setItem('myKeyName', JSON.strinify($(this).parent().attr(item)));   
于 2013-02-28T04:10:09.543 回答