Вы передаете функцию, на которую ссылается buttonView.onClick
, но ее связь с buttonView
не сохраняется .
Чтобы сохранить ссылку через this
, вы можете использоватьjQuery.proxy()
[документы] метод.
$('#bind').bind('click', $.proxy(buttonView,'onClick'));
Теперь this
в функции onClick
будет относиться к вашемуbuttonView
объект.
Пример в реальном времени: http://jsfiddle.net/K72qs/
Или просто сделать явную ссылку на buttonView
в функции onClick
:
onClick : function(){ alert('clicked: ' + buttonView.label); },
Живой пример: http://jsfiddle.net/K72qs/1/