Кнопка прототипа на клике - PullRequest
3 голосов
/ 28 мая 2009

Как сделать так, чтобы каждая кнопка на html-странице выполняла одну и ту же функцию, используя prototype.js? Я использовал метод someElement.observe (), и он работал для одной кнопки. Но как я могу сделать это для каждой кнопки на странице без кодирования отдельно для каждой кнопки?

Ответы [ 3 ]

4 голосов
/ 28 мая 2009

Используйте селектор css для выбора нескольких элементов:

$$('input[type="button"]').observe(...) 
3 голосов
/ 11 июня 2009

Вы также можете использовать делегирование событий, чтобы зарегистрировать один обработчик событий в элементе, который содержит ваши кнопки (например, тело документа), и воспользоваться тем, что события всплывают в DOM.

Это обеспечит вызов вашего обработчика событий для каждой кнопки, даже если вы динамически добавляете новые кнопки на страницу.

* 1005 Е.Г. *

document.observe( 'click', function( event )
{
  var elem = event.element();
  if ( elem.match( 'input[type="button"]' ) )
  {
    // Do your event handler
  }
});
1 голос
/ 26 ноября 2010

Вы также можете использовать это:

Event.observe(window, 'load', function(){
$('idForm').getInputs('radio', 'nameRadio').each(function(el){
el.onclick  = function(){
//Actions<br>

});
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...