有没有办法获取具有相同名称的标签集合?

有点像:

var buttons = document.getElementsByTagName('button');
for (var a = 0; a < buttons['item-menu-edit-button'].length; a++) {
  sys.addEventHandler(buttons['item-menu-edit-button'][a], 'click', callback);
}


我需要为每个编辑按钮分配一个事件处理程序。

[编辑]
html标记是:

<span>
<button name="item-menu-edit-button" id="generiID">Edit</button>
<!-- content -->
</span>
<span>
<button name="item-menu-edit-button" id="generiID">Edit</button>
<!-- other content -->
</span>


我需要为每个名为“ item-menu-edit-button”的按钮上的“ click”事件分配一个事件处理程序。

最佳答案

您似乎正在使用其他语言的函数/关键字,javascript中没有函数addEventHandler。您要执行的内置功能是addEventListener。另外,我不确定sys是什么,但是它们试图编写代码的方式是试图将事件处理程序添加到名为sys的对象而不是按钮中。

var buttons = document.getElementsByTagName('button');

for(var i = 0; i < buttons.length; i++){
    if(buttons[i].getAttribute('name') == 'item-menu-edit-button'){
        buttons[i].addEventListener('click', callback);
    }
}


编辑:根据您的注释更新,以便它分配与name属性匹配的按钮。

关于javascript - js获取具有相同tagName的标签,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15767460/

10-11 11:21