出于某种原因,我无法重新启用按钮并使用相同的按钮浏览表中的所有列。我可以为按钮创建多个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;
}
答案 0 :(得分:1)
是的,请使用addEventListener
。
使用target.addEventListener('click',clickHandlerFunction);而不是target.onclick=clickHandlerFunction;
;'
https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.addEventListener
注意:使用旧版Internet Explorer添加事件的语法不同(target.attachEvent('onclick',handler)
)。如果您需要与旧浏览器兼容,则可以使用这两种语法,使用jQuery的click
或on
函数或gator.js。