添加一个功能到按钮的onclick有参数

时间:2017-05-13 05:31:55

标签: javascript html

我在尝试设置行时遇到问题,按下删除按钮时,行将从表中删除。当我按如下所示设置onclick方法时,它会在创建时自动删除该行。我假设它正在调用函数

我已经看到你在分配导致问题的那个和那个时应该删除括号。但由于显而易见的原因,我要求行id能够删除该行。

name = "thomas";
foo = "foo";
bar = "bar";

// Create a new row
var row = table.insertRow();
row.id = name;

// Create cells with requested information
row.insertCell().innerText = name;
row.insertCell().innerText = foo;
row.insertCell().innerText = bar;
var removeButton = document.createElement("BUTTON");
removeButton.innerHTML = "Remove";
removeButton.onclick = deleteRow(row.id);
var removeButtonCol = row.insertCell();
removeButtonCol.appendChild(removeButton);


function deleteRow(rowID)
{
    var row = document.getElementById(rowID);
    row.parentNode.removeChild(row);
}

那我怎么解决这个问题呢?我不知道如何为需要括号或eaiser方法的函数设置onclick,以便在按下属于rwo的按钮时传递行id

1 个答案:

答案 0 :(得分:1)

事实证明我应该使用事件监听器而不是onclick方法。

EG,我们在那里做了onclick:

var removeButton = document.createElement("BUTTON");
removeButton.innerHTML = "Remove";
removeButton.addEventListener('click', function () {
     deleteRow(row.id)
});

这完美无缺