(我先写一下,我是Backbone和Backgrid的新手。)我正在使用Backgrid和select-all扩展,我遇到的问题是“捕捉”选择all在我的包含/父视图中触发的事件。我想在主网格中选择行时显示详细信息视图。因此,我需要网格中的select事件冒泡到父视图,以便它可以在另一个视图中显示详细信息。
var view = Backbone.View.extend({
el: '.grid',
initialize: function () {
var columns = [{
name: "id",
label: "ID",
editable: false,
cell: "string"
}, {
name: "",
label: "Action",
cell: "select-row"
}];
var grid = new Backgrid.Grid({
columns: columns,
collection: this.collection
});
$("#backgrid").append(grid.render().$el);
});
});
现在我想我想在视图中添加这样的东西
events: {
"backgrid:select": "<name of the function i want to call>"
}
但这似乎不起作用。任何帮助将不胜感激。
答案 0 :(得分:5)
我能够回答我自己的问题......在视图中添加....
this.collection.on('backgrid:selected', function(model, selected) {
//do what i need here
});
backgrid已经触发事件backgrid:select(通过模型处理)但它也触发事件backgrid:选中哪个在集合中冒泡......然后可以通过父视图访问。
可以找到指向此文档的官方API文档的参考 here