Javascript 单击按钮时删除列表项

Javascript 单击按钮时删除列表项,javascript,Javascript,我一直想修改这段代码,以包括一个删除按钮,所以当按钮被点击时,列表项删除,但它没有工作 //ORIGINAL CODE// let elList, addLink, newEl, newText, counter, listItems, oldEl, removeLink; elList = document.getElementById('list'); addLink = document.querySelector('a');

我一直想修改这段代码,以包括一个删除按钮,所以当按钮被点击时,列表项删除,但它没有工作

//ORIGINAL CODE//

let elList, addLink, newEl, newText, counter, listItems, oldEl, removeLink; 

elList  = document.getElementById('list');             
addLink = document.querySelector('a');               
counter = document.getElementById('counter'); 

oldEl = document.getElementsByTagName('li');

removeLink = document.getElementById('delete');      


function addItem(e) {                                   
    e.preventDefault();   
    newEl = document.createElement('li');

newText = document.createTextNode('New list item');

newEl.appendChild(newText);                         

    elList.appendChild(newEl);                             
  }

function updateCount() {                                 
  listItems = elList.getElementsByTagName('li').length;  
  counter.innerHTML = listItems;                        
}

addLink.addEventListener('click', addItem, false);      
elList.addEventListener('DOMNodeInserted', updateCount, false); 

//WHAT I TRIED//
function removeItem(){

e.preventDefault();

oldEl.parentNode.removeChild(oldEl);
} 

removeLink.addEventListener('click', removeItem, false);
我希望当我点击删除按钮时,其中一个列表项会消失,但它根本不起作用。求你了,我需要一些帮助,因为我已经被困在这里很长时间了

oldEl = document.getElementsByTagName('li');
getElementsByTagName返回节点列表,您不能通过以下操作删除它:

oldEl.parentNode.removeChild(oldEl);
如果要删除oldEl中的所有项目,请执行以下操作:

function removeItems(){
  oldEl.forEach((item) => {
    item.parentNode.removeChild(item);
  });
} 

请始终包含所有相关代码(HTML、CSS、JavaScript),以便我们可以复制您的问题并提供有效的解决方案。现在,据我们所知,HTML可能是问题所在,它返回一个节点列表,
oldEl
是您试图使用
oldEl.parentNode.removeChild(oldEl)删除的对象
,但节点列表没有
.parentNode
,也没有
.removeChild()
。如果打开开发人员工具并查看控制台,很可能会在那里看到这些错误。getElementsByTagName返回一个数组