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