2013-08-27 5 views
0

Мне нужно прикрепить событие click динамически с помощью JavaScript. Мой пример кода приведен ниже.Как добавить событие click click динамически

require(["dijit/form/ToggleButton", "dojo/dom-construct"], function (ToggleButton, domConstruct) { 
    var newButton = new ToggleButton({ 
     showLabel: true, 
     checked: false, 
     onChange: function (val) { frame(this); }, 
     label: item.getAttribute('label') 
    }, item.getAttribute('id')); 
}); 

ответ

3

Если вы используете додзё 1.8+, вы можете использовать Widget#on для подключения к событиям после создания виджета.

var newButton = new ToggleButton({ 
    showLabel: true, 
    checked: false, 
    label: item.getAttribute('label') 
}, item.getAttribute('id')); 

newButton.on('change',function(){ 
    console.log('onChange event called'); 
}); 

newButton.on('click',function(){ 
    console.log('click event called'); 
}); 
-1

использование кнопки ID атрибута прикрепить нажмите событие как

$("#buttonid").click(function(){ 

//code goes here 
}) 

где buttonid является атрибутом идентификатор вашей кнопки

+0

Этот вопрос не о jQuery, но речь идет о виджетах Dojo. – g00glen00b

0

Я не совсем уверен, что вы имеете в виду с «динамически», но так же, как ваш обработчик событий onChange, вы можете подключить к нему обработчик событий onClick.

Если вы хотите прикрепить его где-нибудь еще вы можете использовать:

registry.byId("myId").onClick = function(evt) { 
    // Your event handler 
}; 

Я также привел пример JSFiddle.