[英]Can I create multiple onclick events dynamically?
由于某种原因,我无法重新启用按钮并使用相同的按钮浏览表中的所有列。 我可以为该按钮创建多个onclick事件吗? HTML本身实际上只是表中的一个按钮。
function focaccia(x){
var table = document.getElementById("orderTable");
var row = table.insertRow(0);
var rem = document.createElement("button");
var name = document.createTextNode("Remove");
rem.appendChild(name);
rem.onclick = function(){
x.disabled = false;
document.getElementById("orderTable").deleteRow(this);
var table = document.getElementById("orderTable");
var amount = 0;
var tot;
for(var x = 0; x < table.rows.length; x++){
amount = amount + parseInt(table.rows[x].cells[1].children[0].value);
}
tot = amount * 9;
document.getTotal.total.value = tot;
}
var num = document.createElement("input");
num.size = 2;
num.onchange = function(){
var table = document.getElementById("orderTable");
var amount = 0;
var tot;
for(var x = 0; x < table.rows.length; x++){
amount = amount + parseInt(table.rows[x].cells[1].children[0].value);
}
tot = amount * 9;
document.getTotal.total.value = tot;
}
var cell1 = row.insertCell(0);
var cell2 = row.insertCell(1);
var cell3 = row.insertCell(2);
cell1.innerHTML = "Focaccia";
cell2.appendChild(num);
cell3.appendChild(rem);
x.disabled = true;
num.value = 1;
total = total + 9;
document.getTotal.total.value = total;
}
是的,请使用addEventListener
。
代替target.onclick=clickHandlerFunction;
,请使用target.addEventListener('click',clickHandlerFunction);'
https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.addEventListener
注意:使用旧的Internet Explorer添加事件的语法是不同的( target.attachEvent('onclick',handler)
)。 如果你需要用旧的浏览器的兼容性,可以使用两种语法,使用jQuery的click
或者on
功能或gator.js 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.