Да, нет необходимости перезаписывать виджет. Используйте dojo.connect в своем шаблоне, чтобы подключить событие виджета к желаемому Javascript.
т.е.
dojo.connect(dijit.byId('id_field'),'onChange',
function(){
//do something
});
Или, если вы используете dojango , интеграция форм и хотите определить триггер с остальной частью формы.
т.е.
from dojango.forms import *
my_field = DateField(
required=True,
help_text="Enter a valid date!",
widget=DateInput(
attrs={
'invalidMessage': 'The date is invalid!',
'class': 'customClass'
'onClick': 'yourFunction()'
}
))