2013-02-28 25 views
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));            
    }); 

這是在代碼我最好的猜測,我認爲這會已經做了,但沒有運氣,我缺少什麼?

+0

您在localStorage中使用了錯誤的語法設置 – 2013-02-28 04:10:29

回答

0

這是你在localStorage的設置方式:

LocalStorage.itemName = 「項目」;

0
localStorage.setItem('myKeyName', JSON.strinify($(this).parent().attr(item))); 
+0

給出了一個嘗試,仍然適用於突出顯示,但不是保存:嗯,它肯定是其他代碼中的東西我想,謝謝:) – user2079430 2013-02-28 04:21:23

1

localStorage.setItem需要一個關鍵字和一個值,例如,setItem(id, $(this).parent().attr(item))

我也不知道你想要存儲數據的格式 - 它看起來像你正在讀出整個列表,但你保存單個項目。

正如@RPM建議的那樣,如果您將它讀爲JSON,您還應該將其另存爲JSON。

+0

整個列表是可見的,但我只需要關注我想標記的一個列表項目,我該如何解決這個問題?另外我添加了JSON localStorage.setItem(JSON.strinify($(this).parent()。attr(item)));那麼我會在$ this之前添加id嗎? – user2079430 2013-02-28 04:15:29