// **This example illustrates the binding of DOM events to View methods.** // // _Working example: [2.html](../2.html)._ // _[Go to Example 3](3.html)_ // (function($){ var ListView = Backbone.View.extend({ el: $('body'), // el attaches to existing element // `events`: Where DOM events are bound to View methods. Backbone doesn't have a separate controller to handle such bindings; it all happens in a View. events: { 'click button#add': 'addItem' }, initialize: function(){ _.bindAll(this, 'render', 'addItem'); // every function that uses 'this' as the current object should be in here this.counter = 0; // total number of items added thus far this.render(); }, // `render()` now introduces a button to add a new list item. render: function(){ $(this.el).append(""); $(this.el).append(""); }, // `addItem()`: Custom function called via `click` event above. addItem: function(){ this.counter++; $('ul', this.el).append("
  • hello world"+this.counter+"
  • "); } }); var listView = new ListView(); })(jQuery); //
    Follow me on Twitter: @r2r
    //