【发布时间】:2021-07-13 08:57:03
【问题描述】:
如果已经有一个项目,并且再次添加相同的项目,那么它应该在该杂货项目旁边显示“2 now”。每次将同一物品添加到购物清单时,此数字都应增加。请帮我解决这个问题。这是我的代码:
const groceries = document.getElementsByClassName("groceries")[0];
const deleteall=document.getElementById("deleteall");
const allitems=document.getElementById("allitems");
const userinput=document.getElementById("userinput");
deleteall.addEventListener("click",function(){
allitems.innerHTML="";
})
userinput.addEventListener("keydown",function(event){
if(event.key == "Enter")
additem();
})
function additem(){
var h2= document.createElement("h2");
h2.innerHTML="-"+ userinput.value;
if (userinput.value == "") {
alert("Enter some item");
return false;
}
h2.addEventListener("click",function(){
if (h2.style.color === "black") {
h2.style.color = "red";
} else {
h2.style.color = "black";
}
})
allitems.insertAdjacentElement("beforeend",h2);
userinput.value="";
}
【问题讨论】:
-
将一组项目与您的 HTML 分开。然后从该数组生成 h2 元素(li 会更好)。这样解决您的问题就会容易得多。
-
先生,能不能用代码解释一下?
标签: javascript css list counter reactive