在示例7中显示的编辑后,SlickGrid onCellChange

时间:2011-02-21 20:58:50

标签: jquery slickgrid

如果我将以下代码添加到SlickGrid示例7:

grid.onCellChange.subscribe(function(e,args) 
{
  alert("here");
});

如果我更新文本字段“标题”,则会显示警告。当我更新“优先级”字段时,它不会用于演示点击切换值。使用此代码捕获点击次数。

    grid.onClick.subscribe(function(e) {
       var cell = grid.getCellFromEvent(e);
       if (columns[cell.cell].id == "priority") {
          var states = { "Low": "Medium", "Medium": "High", "High": "Low" };
          data[cell.row].priority = states[data[cell.row].priority];
          grid.updateRow(cell.row);
          e.stopPropagation();
       }
    });

问题: 当“优先级”值发生变化时,如何触发onCellChange?

感谢任何能提供帮助的人。 约翰。

2 个答案:

答案 0 :(得分:1)

对我来说很有意义。 仅当在网格内启动操作时,才会通过网格引发事件。 在第二个示例中,您通过拦截特定的单击事件直接对数据源进行更改。

答案 1 :(得分:0)

如何将JQuery与$(#priority).change选择器一起使用?

所以这是它的外观(或类似的东西):

$("#priority").change(function(e) {
    var cell = grid.getCellFromEvent(e);
    var states = { "Low": "Medium", "Medium": "High", "High": "Low" };
    data[cell.row].priority = states[data[cell.row].priority];
    grid.updateRow(cell.row);
    e.stopPropagation();
    });

您可能希望将其更改为使用类而不是id,因为每个DOM ID应该保持每页唯一。