在我的网格视图中

我在集合结束时插入了一个新的主干模型(没有ID的模型),
在backgrid中插入新的空白行

我想将占位符放在该空白行的第一个输入单元格中。
我在文档中找不到相同的内容
但幸运的是我在代码中找到了:
https://github.com/wyuenho/backgrid/blob/master/lib/backgrid.js#L710

但是当单元格进入编辑模式时,此占位符被初始化。

为什么会这样呢?

占位符应始终可见,并且仅当焦点进入该输入单元格时才应隐藏。

但是在backgrid中,恰恰反之亦然。

如何摆脱这个问题?

我想一直显示空白输入Backgrid Cell的占位符。仅在该单元格进入编辑模式时才隐藏。

最佳答案

Backgrid类旨在进行扩展。
您可以通过扩展Backgrid.Cell并覆盖render函数来达到效果。

Backgrid.PlaceholderCell = Backgrid.Cell.extend({

  className: "placeholder-cell",

  render: function () {
    this.$el.empty();
    var model = this.model;
    var value = this.formatter.fromRaw(model.get(this.column.get("name")), model);
    text = value || "PLACEHOLDER";
    this.$el.text(text);
    this.delegateEvents();
    return this;
  }

});


jsFiddle:http://jsfiddle.net/bh5nd/

09-27 01:28