如何使用appendChild追加多个元素

时间:2017-05-28 12:28:50

标签: javascript javascript-events

我有一个单元格(列),我想在其中添加两个按钮。这就是我创造的:

var editbtn = document.createElement('button');
editbtn.type= "button";
editbtn.className= "editbtn";
editbtn.id= "edit-button-"+(i+1);
editbtn.innerHTML= "Edit";
editbtn.onclick = editRow.bind(this, i + 1); 

var savebtn = document.createElement('button');      
savebtn.type= "button";
savebtn.className= "savebtn";
savebtn.id= "save-button-"+(i+1);
savebtn.innerHTML= "Save";
savebtn.onclick = saveRow.bind(this, i + 1);

cell3.appendChild(editbtn); 
cell3.appendChild(savebtn); 

但是,只显示savebtn。如何在同一列中追加两个或更多按钮?

1 个答案:

答案 0 :(得分:-1)

您可以使用数组和for循环轻松完成此操作:

var names = ['edit', 'save'];
var editRows = [editRow, saveRow];

for ( var i = 0; i < names.length; i++ )
{
    var btn       = document.createElement('button');
    btn.type      = "button";
    btn.className = names[i] + "btn";
    btn.id        = names[i] + "-button-" + (i+1);
    btn.innerHTML = names[i];
    btn.onclick   = editRows[i].(this, i + 1);

    cell3.appendChild( editbtn );
}

您可以根据需要添加任意数量的按钮,然后相应地更新nameseditRows,无需触及for循环。