Javascript 如何筛选新的列表元素?
很抱歉代码太长,但我从昨晚开始就一直在尝试查找问题。目标是:Javascript 如何筛选新的列表元素?,javascript,Javascript,很抱歉代码太长,但我从昨晚开始就一直在尝试查找问题。目标是: 当用户输入任何列表值时,它将创建一个包含该值的新列表 当用户单击指定列表的“删除”按钮时,该列表将被删除 当用户在搜索栏中输入任何值时,如果任何列表值等同于搜索输入,则应显示该列表值 问题是,当我在搜索栏中输入一个列表值时,它不会显示任何内容 const btn=document.querySelector(“输入[type=submit]”); const ulTag=文件查询选择器(“ul”); const form=docum
- 当用户输入任何列表值时,它将创建一个包含该值的新列表李>
- 当用户单击指定列表的“删除”按钮时,该列表将被删除李>
- 当用户在搜索栏中输入任何值时,如果任何列表值等同于搜索输入,则应显示该列表值
- 问题是,当我在搜索栏中输入一个列表值时,它不会显示任何内容
const btn=document.querySelector(“输入[type=submit]”); const ulTag=文件查询选择器(“ul”); const form=document.querySelector(“表单”); const search=document.querySelectorAll(“输入”)[0]; 表单。addEventListener(“提交”,createElement); search.addEventListener(“键控”,filterItems); 函数createElement(e){ e、 预防默认值(); const input=document.queryselectoral(“输入”)[1]; 常量列表=document.createElement(“li”); const removebtn=document.createElement(“按钮”); removebtn.className=“btn btn danger btn sm float right delete”; lists.className=“li”; removebtn.appendChild(document.createTextNode(“X”)); const listsValue=document.createTextNode(input.value); lists.appendChild(removebtn); lists.appendChild(listsValue); ulTag.appendChild(列表); 如果(input.value==“”){ form.removeEventListener(“提交”,createElement); } } 函数过滤器项(e){ const searchInput=e.target.value.toLowerCase(); 让allItems=ulTag.getElementsByTagName(“li”); Array.from(allItems.forEach)(列表=>{ 让itemNames=list.firstChild.textContent; if(itemNames.toLowerCase().indexOf(searchInput)!=-1){ list.style.display=“block”; }else if(itemNames.toLowerCase().indexOf(searchInput)=-1){ list.style.display=“无”; } }); }
- 一个问题:
Ans:ItemName应等于list.lastChild.textContent
那么问题是什么?你有什么问题?请阅读此文,并更新你的问题:你在这里试图实现什么?