backbone的view.events中綁定事件

綁定事件的時候必定要先在render中去渲染一下。要否則沒法使用events:{} ;來綁定事件。html

好比我想給#btn綁定click 事件   直接使用events:{ 'click #btn':''fn}是不能綁定上的。this

綁定成功的代碼:spa

var V2 = Backbone.View.extend({
        el: $('.container'),
        html:$('.container').html(),
        initialize: function () {
            this.listenTo(this.model, 'change', this.render);
        },
        events: {
            "click #btn" : "fn"
        },
        render:function (){
            this.$el.html(this.html);
            this.delegateEvents();  //從新綁定一下因此的事件。以防出錯
            return this;  //這裏模仿了backbone 中的例子
        },
        fn: function (event) {
            console.log('v');
        }
    });

唉。剛接觸backbone。第一次碰見的坑。不過仍是解決了。htm

相關文章
相關標籤/搜索