Задать вопрос
@romanjolud
Начинающий Web программист

Где ошибка в LocalStorage для ToDo List на JS?

Сделал LocalStorage для своего To do list , но информация слетает при обновлении странички.
Что делать , уже около 2 часов сижу , код снизу:


HTML код:
<div class="header">
        <h1>To do list</h1>
        <h4></h4>
        <input type="text" placeholder="Your task here" id="toDoEl">
        <span class="addBtn" onclick="newElement()">Add</span>
    </div>
    <ul id="list">

    </ul>


var list = document.querySelector('ul');
var todos;
function toLocal(){
    todos = list.innerHTML;
    localStorage.setItem('todos',todos);
}
list.addEventListener('click', function (ev) {
    if(ev.target.tagName === "LI") {
       ev.target.classList.toggle('checked');
        toLocal();
    } else if(ev.target.tagName === "SPAN") {
       var div = ev.target.parentNode;
       div.remove();
        toLocal();
    }
}, false);

function newElement() {
    var li = document.createElement('li');
    var inputValue = document.getElementById('toDoEl').value;
    var t = document.createTextNode(inputValue);
    li.appendChild(t);
    if(inputValue == "") {
       alert("Введите ваше дело!");
    } else {
       document.getElementById('list').appendChild(li);
    }
    document.getElementById('toDoEl').value = "";
    var span = document.createElement('SPAN');
    var txt = document.createTextNode("X");
    span.className = "close";
    span.appendChild(txt);
    li.appendChild(span);
 toLocal();
}

if(localStorage.getItem('todos')){
    list.innerHTML = localStorage.setItem('todos',todos);
}
  • Вопрос задан
  • 953 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
@Qvazi
Web Developer: готов выслушать любое предложение.
if(localStorage.getItem('todos')){
    // у тебя
    // list.innerHTML = localStorage.setItem('todos',todos);
    // должно быть
    list.innerHTML = localStorage.getItem('todos');
}

Вместо setItem надо getItem

ps: Отдыхать надо :)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
BuriK666
@BuriK666
Компьютерный псих
list.innerHTML = localStorage.setItem('todos',todos);

Может все же getItem?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы