backbone.js Veranstaltungen und el

Okay, also ich habe gelesen, einige andere Fragen in Bezug auf Backbone-Ansichten und Ereignisse, die nicht gefeuert zu werden, aber ich bin immer noch nicht ist es leider. Ich war Herumspielen mit Rückgrat für etwa einen Tag, so dass ich sicher bin, fehlt mir etwas grundlegendes. Hier ein jsfiddle mit was ich arbeite:
http://jsfiddle.net/siyegen/e7sNN/3/

(function($) {

    var GridView = Backbone.View.extend({
        tagName: 'div',
        className: 'grid-view',
        initialize: function() {
            _.bindAll(this, 'render', 'okay');
        },
        events: {
            'click .grid-view': 'okay'
        },
        okay: function() {
            alert('moo');
        },
        render: function() {
            $(this.el).text('Some Cow');
            return this;
        }
    });

    var AppView = Backbone.View.extend({
        el: $('body'),
        initialize: function() {
            _.bindAll(this, 'render', 'buildGrid');
            this.render();
        },
        events: {
            'click button#buildGrid': 'buildGrid'
        },
        render: function() {
            $(this.el).append($('<div>').addClass('gridApp'));
            $(this.el).append('<button id="buildGrid">Build</button>');
        },
        buildGrid: function() {
            var gridView = new GridView();
            this.$('.gridApp').html(gridView.render().el);
        }

    });

    var appView = new AppView();

})(jQuery);

Den okay Ereignis auf das GridView-Steuerelements wird nicht ausgelöst, ich nehme an, weil div.grid-view nicht vorhanden, wenn das Ereignis ist zunächst gebunden. Wie sollte ich damit umgehen Sie die Bindung und das feuern eines Ereignisses, gebaut auf einer Ansicht dynamisch? (Es ist zudem ein kurzes Beispiel, aber fühlen Sie sich frei, mich anzubrüllen, wenn ich etwas anderes zu tun, ich sollte nicht)

da el ist div-tag mit .grid-view . und Sie finden .grid-view Klasse name-element in das div . die wirst du nicht bekommen .

InformationsquelleAutor siyegen | 2011-09-25

Schreibe einen Kommentar