كيف يمكنن مقارنة النص الموضع داخل INPUT مع H3 موجود داخل DIV موجود داخل DIV ,,, جربة استخدام FOR..IN للمرور على كل H3 موجودة وطلعلي ERROR (ncaught TypeError: Cannot read property 'childNodes' of undefined)
HTML
<!DOCTYPE html><html><head><linkrel="stylesheet"href="pro2.css"><linkrel="stylesheet"href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.5.0/font/bootstrap-icons.css"></head><body><divid="parent"><divid="up"><h1>Add New Task</h1><inputtype="text"id="addinput"placeholder="New Task"><divid="bdiv"><buttononclick="newTask()">Add task</button></div></div><divid="down"><h1>Filter Tasks</h1><inputtype="text"id="filter"placeholder="filter Tasks"onclick="filterfun()"></div><h2>List Of Tasks</h2><divid="tasks"></div><buttonclass="zz"onclick="TP()">Clear tasks</button></div><scriptsrc="pro2.js"></script></body></html>
JS
'use strict';
let id=0;const tasks=document.getElementById('tasks');function newTask(){// if the input is emptyif(addinput.value ==="")
alert("Enter a task plz!");//if the input is numberelseif(!isNaN(addinput.value))
alert("Enter a usefull task plz!");//if the entered task is already existelseif(comp())
alert("This task already exist")else{
id++;
let v1=document.getElementById("addinput").value;
localStorage.setItem(id,v1);//new div in tasks
let newdiv=document.createElement('div');
newdiv.setAttribute("id","task");
tasks.appendChild(newdiv);//new h1 in newdiv
let newh3=document.createElement('h3');
newh3.setAttribute("id","h3");
newh3.addEventListener('click',()=>{
newh3.style.textDecoration="line-through";});
let newtext=document.createTextNode(localStorage.getItem(id));
newh3.appendChild(newtext)
newdiv.appendChild(newh3);//new i in newdiv
let newi=document.createElement('i');
newi.setAttribute("class","bi bi-x-square-fill");
newi.addEventListener('click',()=>{
alert('are u shure');
newi.parentNode.parentNode.removeChild(newi.parentNode);});
newdiv.appendChild(newi);//empty the value after click
addinput.value="";}}//comperison between the enterd value and items in local storageconst comp=()=>{for(let i=0;i<=localStorage.length+1;i++){if(addinput.value===localStorage.getItem(i))returntrue;}returnfalse;}function TP(){// for(let z=1;z<tasks.childElementCount;z++)for(let z in tasks){if(filter.value==tasks.childNodes[z].childNodes[0].textContent)
console.log('hello');}// console.log(filter.value,typeof(filter.value));// console.log(tasks.childNodes[1].childNodes[0].textContent,typeof(tasks.childNodes[1].childNodes[0].textContent))}function filterfun(){}
localStorage.clear();
السؤال
Oday Qsrawi
كيف يمكنن مقارنة النص الموضع داخل INPUT مع H3 موجود داخل DIV موجود داخل DIV ,,, جربة استخدام FOR..IN للمرور على كل H3 موجودة وطلعلي ERROR (ncaught TypeError: Cannot read property 'childNodes' of undefined)
HTML
JS
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.