Struts2 jqGrid 绑定 afterclickPgButtons 到编辑对话框

Struts2 jqGrid Bind afterclickPgButtons to Edit Dialog

我有一个 struts2-jquery jqGrid 页面,其中的网格使用事件对话框。我正在尝试将事件 afterclickPgButtons 绑定到编辑对话框。我可以将事件绑定到整个网格 (gridTable),但是我在将事件绑定到对话框时遇到了问题。当使用编辑对话框内的 next/prev 按钮时,我想在编辑对话框信息更改后修改元素的内容。

$("#editmodgridtable").bind("afterclickPgButtons", function(whichbutton, formid, rowid){
    alert("Hey!");
});

我正在尝试 运行 下面的 loadComplete 并绑定到 jqGridAddEditAfterShowForm 认为我需要在页面加载后和显示表单后进行最终绑定。

$.subscribe('loadComplete', function(event, data) {
    $("#gridtable").bind("jqGridAddEditAfterShowForm", function (e, $form, oper) {
        $("#editmodgridtable").bind("afterclickPgButtons", function(whichbutton, formid, rowid){
    alert("Hey!");
        });
     }
}

但是,上面的代码似乎很繁琐,并且绑定到afterclickPgButtons 不起作用。如何让 afterClickPgButtons 工作非常感谢任何帮助。

我不确定您使用的网格 ID 是:"editmodgridtable" 还是 "gridtable"。您应该直接绑定 "jqGridAddEditAfterShowForm""jqGridAddEditAfterClickPgButtons""jqGridLoadComplete" 。当您进行绑定时,事件并不重要。主网格 (<table id="gridtable"></table>) 的 table 应该在绑定之前就存在。所以正确的代码可以很简单

var $grid = $("#gridtable");

$grid.bind("jqGridLoadComplete", function (e, data) {
    alert("In jqGridLoadComplete");
});

$grid.bind("jqGridAddEditAfterShowForm", function (e, $form, oper) {
    alert("In jqGridAddEditAfterShowForm");
});

$grid.bind("jqGridAddEditAfterClickPgButtons", function (e, whichButton, $form, rowid) {
    alert(whichButton + " " + rowid);
});