0

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);

像这样我必须从数据库中获取选项值

4

2 回答 2

0

Cell 只是一个 Backbone 视图,因此您可以访问模型。因此,您可以执行以下操作:

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;
    }
  }

这两者的某种组合可能会为您提供所需的东西。

于 2014-09-02T18:45:33.763 回答
0

以下是官方文档中的一些示例。

于 2014-01-23T09:43:07.460 回答