如何使删除按钮和完成按钮在ToDO列表Javascript上工作

如何使删除按钮和完成按钮在ToDO列表Javascript上工作,javascript,events,Javascript,Events,我正在用Javascript创建一个待办事项列表,我不知道如何让我的删除/完成按钮工作。当我点击“删除”按钮时,我希望它删除li,当我点击“完成”按钮时,我希望我的li背景更改为“背景”。到目前为止,当我点击删除/完成按钮时,它会提醒我,所以我知道它们正在工作 这是我到目前为止的代码,如果有帮助的话 var input = document.getElementById('userInput'); var enterButton = document.getElementById('enter'

我正在用Javascript创建一个待办事项列表,我不知道如何让我的删除/完成按钮工作。当我点击“删除”按钮时,我希望它删除
li
,当我点击“完成”按钮时,我希望我的
li
背景更改为“背景”。到目前为止,当我点击删除/完成按钮时,它会提醒我,所以我知道它们正在工作

这是我到目前为止的代码,如果有帮助的话

var input = document.getElementById('userInput');
var enterButton = document.getElementById('enter');
var deleteButtons = document.getElementsByClassName("Remove");
for (var i = 0; i < deleteButtons.length; i++) {
  deleteButtons[i].addEventListener('click', deleteListItem, false);
}

var completeButtons =
  document.getElementsByClassName("Complete");
for (var i = 0; i < completeButtons.length; i++) {
  completeButtons[i].addEventListener('click', completeListItem, false);
}
var ul = document.querySelector('ul');

function inputLength() {
  return input.value.length;
};

function listLength() {
  return item.length;
}

function createListElement() {
  var li = document.createElement('li');
  li.appendChild(document.createTextNode(input.value));
  //makes text node 

  var clonedButton =
    document.getElementById("buttons").cloneNode(true);
  clonedButton.childNodes[1].addEventListener('click', deleteListItem, false);
  clonedButton.childNodes[3].addEventListener('click', completeListItem, false);

  li.appendChild(clonedButton);
  ul.appendChild(li);
  input.value = "";

}

function deleteListItem() {
  alert("Yuh");
  // li.classList.add("delete");
}

function completeListItem() {
  alert("Item was completed");
  li.classLi

}

function addListAfterClick() {
  if (inputLength() > 0) {
    createListElement();
  }
}
// Hit enter key and create list
function addAfterPress(event) {
  if (inputLength() > 0 && event.which === 13) {
    createListElement();
  }
}

enterButton.addEventListener('click', addListAfterClick);
input.addEventListener('keypress', addAfterPress);
var input=document.getElementById('userInput');
var enterButton=document.getElementById('enter');
var deleteButtons=document.getElementsByClassName(“删除”);
对于(var i=0;i0){
createListElement();
}
}
//按enter键并创建列表
功能addAfterPress(事件){
if(inputLength()>0&&event.which==13){
createListElement();
}
}
enterButton.addEventListener('click',addListAfterClick);
input.addEventListener('keypress',addAfterPress);

li是删除和完成按钮的祖辈节点(父节点是
按钮的克隆)。所以你想要:

function deleteListItem() {
  var li = this.parentNode.parentNode;
  li.remove();
}

function completeListItem() {
  var li = this.parentNode.parentNode;
  li.classList.add("Complete");
}