I think a viewmodel can be binded directly on the DOM element. For example, <div kd-controller='viewmodel'> <button kd-click="click"></button> </div> <script> var viewmodel = kendo.observable({ click: function() { alert('I am clicked!'); } }) </script>