0

我有两种观点,ListViewItemView。在以下ItemView位置填充:renderListView

this.items.each(function(model, index) {
    new ItemView({
        item: model,
    });
});

所有ItemView共享同一个容器el;是 a <tbody>,其模板是<tr>.

当触发事件时,它们指向包含元素,从而导致例如save触发保存所有ItemView而不是仅被单击的那个。有没有办法规避这种行为,还是有更好的做法?

4

1 回答 1

0

你可以试试这个

ListView = Backbone.View.extend({
        events : {
            'click tr' : function(e){
                       this.items.each(function(model){
                       model.trigger('save');
                  });
             }
        }
})

然后在项目视图中绑定保存事件。

this.model.on('save', function(){
  //your code here
});
于 2013-02-28T08:47:02.217 回答