Backgrid示例代码: 这是backgrid网站中给出的代码,类似地我必须从数据库中获取值以填充网格内的select2cell选项值
var data = new Backbone.Collection([{number: 5, another: 1}]);
// Just like SelectCell, Select2Cell supports option lists and groups
var numbers = [{name: 10, values: [
[1, 1], [2, 2], [3, 3], [4, 4], [5, 5],
[6, 6], [7, 7], [8, 8], [9, 9], [10, 10]
]}];
var MySelect2Cell = Backgrid.Extension.Select2Cell.extend({
select2Options: {
// any options specific to `select2` goes here`enter code here`
},
optionValues: numbers
});
var grid = new Backgrid.Grid({
columns: [{
name: "number",
cell: MySelect2Cell
},
{
name: "another",
cell: MySelect2Cell
}],
collection: data
});
$("#select2-cell-example-result").append(grid.render().el);
像这样我必须从数据库中获取选项值
答案 0 :(得分:0)
以下是official documentation中的一些示例。
答案 1 :(得分:0)
Cell只是一个Backbone View,因此您可以访问该模型。所以你可以这样做:
var data = new Backbone.Collection([{number: 5, another: 1, options: optionsForNumber5}]);
var MySelect2Cell = Backgrid.Extension.Select2Cell.extend({
select2Options: {
return this.model.get("options");
}
});
您还可以访问列模型,因此您可以执行以下操作:
var MySelect2Cell = Backgrid.Extension.Select2Cell.extend({
select2Options: {
if (this.column.get("name") === "number"){
return optionsForName;
}
if (this.column.get("name") === "another"){
return optionsForAnother;
}
}
这两者的某些组合可能会为您提供所需的一切。