2

如何为添加新行和 iggrid 本身创建单独的触发器?我希望能够在不打开编辑器的情况下选择(单击)一行,但同时我想单击添加新行按钮并单击打开编辑器。我还想将 dblclick 事件挂接到行并打开编辑器。

期望的事件

  • 添加新行按钮:单击
  • 行编辑:dblclick
  • 行选择:单击

到目前为止,我有以下设置,但它适用于整个网格,包括添加新行按钮。如下所示,行编辑工作由 dblclick(好)和单击选择行(好)但是,我仍然需要双击添加新行按钮。如何触发编辑器对话框的打开?

在此处输入图像描述

更新

我不知道如何直接订阅网格事件,但我能够使用 jquery 在添加行标题上创建一个 onclick 处理程序。

        rendered: function(evt, ui) {
          console.log("rendered");
          var ds = $("#groupMappingTable").igGrid("option", "dataSource");
          console.log("datasource");
          console.log(ds);
          $("#groupMappingTable > thead > tr.ui-iggrid-addrow.ui-widget-header > td")
            .on('click',
              function(e) {
                var obj = $("#groupMappingTable").igGridUpdating("startAddRowEdit", e);
                console.log("grid updating");
                console.log(obj);
              });
        },

我必须在呈现的回调中注册。从这里我触发以下

var obj = $("#groupMappingTable").igGridUpdating("startAddRowEdit", e);

现在,当我单击添加行时,它会触发并添加一行,但数据 ID 现在全为零,单击该行会选择所有添加的行,而 dbl 单击一行只会选择添加的第一个行。

在此处输入图像描述

4

1 回答 1

1

所有这些事件都已经被igGrid.

行添加

//Initialize
$(".selector").igGrid({
    features : [
        {
            name : "Updating",
            rowAdding: function(evt, ui){ ... }
        }
    ]
});

行编辑

//Initialize
$(".selector").igGrid({
    features : [
        {
            name : "Updating",
            editRowStarting: function(evt, ui){ ... }
        }
    ]
});

行选择

//Initialize
$(".selector").igGrid({
    features : [
        {
            name : "RowSelectors",
            rowSelectorClicked: function(evt, ui){ ... }
        }
    ]
});
于 2016-09-30T08:43:03.620 回答