-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
47 lines (38 loc) · 1.27 KB
/
script.js
File metadata and controls
47 lines (38 loc) · 1.27 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
const todoInput = document.getElementById("todo-input");
const addTaskBtn = document.getElementById("add-task-btn");
const todoList = document.getElementById("todo-list");
loadTask();
function addTask(){
const task= todoInput.value.trim();
if(task){
createTaskElement(task);
saveTask();
todoInput.value = "";
}else{
alert("Do not leave the Fields empty!")
}
}
addTaskBtn.addEventListener('click', addTask);
function createTaskElement(task){
const listItem = document.createElement('li');
listItem.innerHTML = `
<span>${task}</span>
<button class="delete-task"><img class="delete-icon" src="https://cdn-icons-png.flaticon.com/512/3976/3976961.png" alt="Bin Image"/></button>
`
todoList.appendChild(listItem);
listItem.querySelector(".delete-task").addEventListener("click", function () {
listItem.remove();
saveTask(); // Update localStorage
});
}
function saveTask(){
let tasks = [];
todoList.querySelectorAll('li').forEach(function(item){
tasks.push(item.textContent.trim());
})
localStorage.setItem('tasks', JSON.stringify(tasks))
}
function loadTask(){
const tasks = JSON.parse(localStorage.getItem('tasks')) || [];
tasks.forEach(createTaskElement);
}