-
Notifications
You must be signed in to change notification settings - Fork 0
/
script.js
77 lines (69 loc) · 2.15 KB
/
script.js
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
//login validation using callback
function tocheck(event, rdcrt) {
event.preventDefault();
var username = document.getElementById("username").value;
var pass = document.getElementById("password").value;
if ((username == "admin") & (pass == "12345")) {
rdcrt();
} else {
alert("invalid login");
}
}
// callback to redirect to main page
var rd= () => {
window.location.href = "main.html";
}
//to fetch json by xmlhttp request
function fetchTodos() {
return new Promise((resolve, reject) => {
var xhr = new XMLHttpRequest();
xhr.open("GET", "https://jsonplaceholder.typicode.com/todos", true);
xhr.onload = function () {
if (xhr.status === 200) {
resolve(JSON.parse(xhr.responseText));
} else {
reject(Error(xhr.statusText));
}
};
xhr.onerror = function () {
reject(Error("Network Error"));
};
xhr.send();
});
}
//calling the function to execute promise
function processTodos() {
fetchTodos()
.then((todos) => {
var completedCount = 0;
var todoList = document.getElementById("todo-list");
todos.forEach(function (todo) {
var listItem = document.createElement("li");
listItem.classList.add("myitem");
var checkbox = document.createElement("input");
checkbox.type = "checkbox";
checkbox.classList.add("mycheck");
listItem.appendChild(checkbox);
var titleNode = document.createTextNode(todo.title); // Create a text node with the todo title
listItem.appendChild(titleNode); // Append the text node to the listItem
todoList.appendChild(listItem);
checkbox.addEventListener("change", function (event) {
if (checkbox.checked) {
completedCount++;
console.log(completedCount);
} else {
completedCount--;
}
if (completedCount === 5) {
alert("Congrats. 5 Tasks have been Successfully Completed");
}
});
});
})
.catch(function (error) {
console.log("Error:", error);
});
var cng = document.getElementById("demodiv");
console.log(cng);
cng.parentNode.removeChild(cng);
}