Javascript 向每个列表元素添加一个按钮元素
我想向每个列表元素(JavaScript)添加按钮元素 这是我的密码。我用了fro loop。在输出中,只有列表的最后一个元素获取button元素。我做错了什么Javascript 向每个列表元素添加一个按钮元素,javascript,Javascript,我想向每个列表元素(JavaScript)添加按钮元素 这是我的密码。我用了fro loop。在输出中,只有列表的最后一个元素获取button元素。我做错了什么 function createButtonElement() { var btn = document.createElement("button"); ` btn.appendChild(document.createTextNode("Delete Me")); var a = document.query
function createButtonElement() {
var btn = document.createElement("button"); `
btn.appendChild(document.createTextNode("Delete Me"));
var a = document.querySelectorAll("li");
for(var v =0; v<a.length;v++)
{
a[v].appendChild(btn);
}
}
函数createButtonneElement(){
var btn=document.createElement(“按钮”)`
btn.appendChild(document.createTextNode(“删除我”);
var a=document.queryselectoral(“li”);
对于(var v=0;v您需要为每个项目创建一个新按钮,否则按钮只会从一个项目移动到另一个项目,直到到达最后一个项目为止
函数createButtonneElement(){
var a=document.queryselectoral(“li”);
对于(var v=0;v而言,该行为记录在:
如果给定的子节点是对文档中现有节点的引用,
appendChild()将其从当前位置移动到新位置
(不需要从其父节点中删除节点
在将其附加到其他节点之前)
相反,为循环中的每个li
实例化一个新按钮:
函数createButtonneElement(){
var a=document.queryselectoral(“li”);
对于(var v=0;v
a
b
c
单击
您需要为每个li元素创建按钮
function createButtonElement() {
var a = document.querySelectorAll("li");
for(var v =0; v<a.length;v++) {
var btn = document.createElement("button");
btn.appendChild(document.createTextNode("Delete Me"));
a[v].appendChild(btn);
}
}
函数createButtonneElement(){
var a=document.queryselectoral(“li”);
对于(var v=0;v您只创建了一个按钮,并将其附加到第一个,然后将其附加到第二个…因为他不能位于两个不同的位置。此命令将按钮移动到第二个位置,依此类推
要复制,必须使用cloneNode方法:
示例代码:
const MyList=document.querySelector(“#我的列表”)
,AddButtons=document.querySelector(“#添加按钮”)
AddButtons.onclick=\u=>
{
让newBt=document.createElement('按钮')
newBt.textContent='删除我'
document.queryselectoral(“#我的列表li”).forEach(eLI=>eLI.appendChild(newBt.cloneNode(true)))
}
MyList.onclick=e=>
{
如果(e.target.tagName.toLowerCase()!='button')返回
设pLI=e.target.parentElement
MyList.removeChild(pLI)
}
向列表中的每个元素添加按钮
- 一,
- 二,
- 三,
- 四,
这是故意的吗?使用数组内部推送进行循环您需要为每个li
元素创建一个不同的按钮,不要忘记在该循环中为其提供一个单击事件侦听器以及一个id或一些数据集信息,以便区分每个按钮