在Javascript/HTML中为按钮设置事件处理程序
我想为所有“添加”按钮设置事件处理程序。你对一个普通的JS代码片段满意吗? 沿着这些思路做一些事情可以:在Javascript/HTML中为按钮设置事件处理程序,javascript,html,Javascript,Html,我想为所有“添加”按钮设置事件处理程序。你对一个普通的JS代码片段满意吗? 沿着这些思路做一些事情可以: function registerHandlers () { var buttons = document.querySelectorAll('.button'); [].slice.call(buttons).forEach(function (button) { button.addEventListener('click', onClick, false); });
function registerHandlers () {
var buttons = document.querySelectorAll('.button');
[].slice.call(buttons).forEach(function (button) {
button.addEventListener('click', onClick, false);
});
}
function onClick (event) {
event.preventDefault();
var button = event.target;
var id = button.id;
var desc = document.getElementById(id + '-img').getAttribute('title');
var qty = document.getElementById(id + '-qty').value;
addToTable(desc, qty);
}
function addToTable (desc, qty) {
var row = '<tr><td align="left">' + desc + '</td><td align="right">' + qty + '</td></tr>';
var tbody = document.querySelector('#orderlist tbody');
tbody.innerHTML = tbody.innerHTML + row;
}
registerHandlers();
函数寄存器句柄(){
var buttons=document.queryselectoral('.button');
[].slice.call(按钮).forEach(函数(按钮){
addEventListener('click',onClick,false);
});
}
函数onClick(事件){
event.preventDefault();
var按钮=event.target;
var id=button.id;
var desc=document.getElementById(id+'-img').getAttribute('title');
var qty=document.getElementById(id+'-qty')。值;
可添加表(描述、数量);
}
功能添加表(说明,数量){
变量行=“”+描述+“”+数量+“”;
var tbody=document.querySelector(“#orderlist tbody”);
tbody.innerHTML=tbody.innerHTML+行;
}
寄存器句柄();
代码未经测试:-)
但它的工作原理如下:
注册管理员:
标题
属性。(如果未找到此类元素,则可能会崩溃)desc
和quantity
之间的字符串。您可能希望通过使用或投入更多的精力,并通过这种方式获得一些健全性检查
innerHTML
附加到新行中最后,请调用registerHandler来完成上述工作。有javascript代码吗?到目前为止,您尝试了哪些代码?