来自外部的 Ag-grid 触发事件
Ag-grid trigger events from outside
我正在使用 ag-grid。我在 gridOptions
:
中定义了事件处理程序
gridOptions =
{
...
onCellEditingStarted: function (event) { /* magic happens!*/ },
onCellEditingStopped: function (event) { /* magic happens!*/ }
...
}
编辑单元格时 starts/stops - 一切正常。但在某些时候我需要从其他 .js 文件触发这些事件,我什至没有 ag-grid 实例。
我正在尝试这样的事情:
$(window).trigger('cellEditingStopped');
但不幸的是它不起作用。我究竟做错了什么?是否可以通过这种方式触发 ag-grid 的事件,或者我需要编写更多代码?
这是我找到的实现目标的解决方案:
gridOptions =
{
...
onCellEditingStarted: function (event) { /* magic happens!*/ },
onCellEditingStopped: function (event) { /* magic happens!*/ }
onGridReady: function() {
$('#gridContainer').off("cell-editing-stop");
$('#gridContainer').on("cell-editing-stop", function () {
gridOptions.api.stopEditing();
});
},
...
}
所以在我的其他文件中我可以做这样的事情:
that.OnCellEditingStop = new Event('cell-editing-stop');
$('#gridContainer').trigger('cell-editing-stop');
这个解决方案对我来说看起来很干净,我不必以某种方式将我的网格实例移动到另一个文件。希望它能以某种方式帮助别人
我正在使用 ag-grid。我在 gridOptions
:
gridOptions =
{
...
onCellEditingStarted: function (event) { /* magic happens!*/ },
onCellEditingStopped: function (event) { /* magic happens!*/ }
...
}
编辑单元格时 starts/stops - 一切正常。但在某些时候我需要从其他 .js 文件触发这些事件,我什至没有 ag-grid 实例。
我正在尝试这样的事情:
$(window).trigger('cellEditingStopped');
但不幸的是它不起作用。我究竟做错了什么?是否可以通过这种方式触发 ag-grid 的事件,或者我需要编写更多代码?
这是我找到的实现目标的解决方案:
gridOptions =
{
...
onCellEditingStarted: function (event) { /* magic happens!*/ },
onCellEditingStopped: function (event) { /* magic happens!*/ }
onGridReady: function() {
$('#gridContainer').off("cell-editing-stop");
$('#gridContainer').on("cell-editing-stop", function () {
gridOptions.api.stopEditing();
});
},
...
}
所以在我的其他文件中我可以做这样的事情:
that.OnCellEditingStop = new Event('cell-editing-stop');
$('#gridContainer').trigger('cell-editing-stop');
这个解决方案对我来说看起来很干净,我不必以某种方式将我的网格实例移动到另一个文件。希望它能以某种方式帮助别人