如何使用prototype.js让html页面上的每个按钮执行相同的功能? 我使用了someElement.observe()方法,它适用于一个按钮。但是如何为页面上的每个按钮执行此操作而不为每个按钮单独编码?
答案 0 :(得分:4)
使用css选择器选择多个元素:
$$('input[type="button"]').observe(...)
答案 1 :(得分:3)
您还可以使用事件委派在包含按钮的元素(例如文档正文)上注册一个事件处理程序,并利用事件冒泡DOM的事实。
这将确保为每个按钮调用事件处理程序,即使您向页面动态添加新按钮也是如此。
E.g。
document.observe( 'click', function( event )
{
var elem = event.element();
if ( elem.match( 'input[type="button"]' ) )
{
// Do your event handler
}
});
答案 2 :(得分:1)
您也可以使用它:
Event.observe(window, 'load', function(){
$('idForm').getInputs('radio', 'nameRadio').each(function(el){
el.onclick = function(){
//Actions<br>
});
});