【发布时间】:2009-05-28 18:48:48
【问题描述】:
如何使用prototype.js 让html 页面上的每个按钮执行相同的功能? 我使用了 someElement.observe() 方法,它适用于一个按钮。但是如何在不为每个按钮单独编码的情况下为页面上的每个按钮执行此操作?
【问题讨论】:
标签: button prototypejs
如何使用prototype.js 让html 页面上的每个按钮执行相同的功能? 我使用了 someElement.observe() 方法,它适用于一个按钮。但是如何在不为每个按钮单独编码的情况下为页面上的每个按钮执行此操作?
【问题讨论】:
标签: button prototypejs
使用css选择器选择多个元素:
$$('input[type="button"]').observe(...)
【讨论】:
您还可以使用事件委托在包含您的按钮的元素(例如文档正文)上注册一个事件处理程序,并利用事件在 DOM 中冒泡这一事实。
这将确保为每个按钮调用事件处理程序,即使您向页面动态添加新按钮也是如此。
例如
document.observe( 'click', function( event )
{
var elem = event.element();
if ( elem.match( 'input[type="button"]' ) )
{
// Do your event handler
}
});
【讨论】:
您也可以使用它:
Event.observe(window, 'load', function(){
$('idForm').getInputs('radio', 'nameRadio').each(function(el){
el.onclick = function(){
//Actions<br>
});
});
【讨论】: