gpt4 book ai didi

javascript - 使按钮列表单击

转载 作者:行者123 更新时间:2023-12-03 11:21:35 25 4
gpt4 key购买 nike

注意:我知道可能有其他语言可以做到这一点,但是我只是学过javascript。

我有一个对象数组(在这种情况下,食物项目,每个项目都有一个name属性)。我在for循环中有此代码,该循环为数组中的每个项目设置按钮(如果数组中的第一个项目具有cake的名称,则Cake的按钮称为cake,如果项目被称为fries,则按钮名称为fries) 。我希望用户只能单击每个项目的按钮一次,并且单击该按钮时,我要显示单击的每个项目的列表。我使用var click = item [i] .name的原因是因为我希望每个按钮都具有项目的名称。这段代码为数组中的项目创建了一个按钮,但没有列出单击的项目。这是我的代码:

HTML

 <html>
<head>
</head>
<body>
<p id="likes">Likes: </p>
</body>
</html>

JAVASCRIPT
var items=[
{
name:"cake",
price:12
},
{
name:"fries",
price:10
},
{
name:"apple",
price:11
}
];



window.onload = function() {
for (var i = 0; i < items.length; i++) {

var btnItems = document.createElement("button");
btnItems.id = "btnItems";
btnItems.innerHTML = "Items";

var clicks = items[i].name;
btnItems.onclick = function () {

el.disabled = true;
clicks += items[i].name + i;
document.getElementById("clicks").innerHTML = "Items Clicked" + clicks;
}
}

最佳答案

随意设置 View 样式,但这应该可以解决您的问题

var items = [{
name: "cake",
price: 12
},
{
name: "fries",
price: 10
},
{
name: "apple",
price: 11
}
];

for (let i = 0; i < items.length; i++) {
const btn = document.createElement("button");
btn.id = "btnItems";
btn.textContent = items[i].name;

btn.onclick = function(el) {
// disable your button immediately upon click
el.target.disabled = true;
// create list element and assign value
const li = document.createElement('li');
li.textContent = items[i].name
// append list element to your <ul> list
document.getElementById('list-section').appendChild(li);
}
// append button to the DOM
document.body.appendChild(btn)
}
<ul id="list-section">

</ul>

关于javascript - 使按钮列表单击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60687915/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com