【发布时间】:2013-03-26 12:36:20
【问题描述】:
New StaticDataSource 将为fuelux 网格构造数据源。格式化程序将设置属性以在数据网格单元格中生成可编辑按钮。代码如下:
app.PlayersView = Backbone.View.extend({
template: _.template( $("#players-template").html() ),
events: {
"click #addUser" : "addUser",
},
initialize: function () {
if(this.collection){
this.collection.fetch();
}
this.listenTo(this.collection, 'all', this.render);
},
render: function () {
this.$el.html( this.template );
var dataSource = new StaticDataSource({
columns: [
{
property: 'username',
label: 'Username',
sortable: true
},
{
property: 'group',
label: 'Groups',
sortable: true
},
{
property: 'edit',
label: 'Edit',
sortable: true
}
],
formatter: function (items) {
$.each(items, function (index, item) {
item.edit = '<div class="btn-group"><a id="editGroup" class="btn">Edit</a></div>';
});
},
data: this.collection.toJSON(),
delay: 250
});
$('#MyGrid').datagrid({
dataSource: dataSource,
stretchHeight: true
});
});
app.Playerview 对象在 bakcbone 路由器的某处创建如下:
new app.PlayersView({
collection : new app.UsersCollection
}));
在这里,列是用户名、组和编辑。每行的编辑列包含编辑按钮。当我单击任何行中的编辑按钮时,我想将特定的行模式或行数据传递给任何其他主干视图。我们该怎么做?
实际上,我将打开允许编辑该特定行的对话框。我希望 modal 由该行值预先填充。
提前致谢
【问题讨论】:
-
你的行是由模型+视图表示的吗?
-
@Loamhoof,fuelux 数据网格直接拿走我的收藏。因此,我想弄清楚如何获取每一行的模型并将它们传递给其他视图时点击编辑行
-
你的作品看起来很不错!
标签: javascript backbone.js datagrid fuelux