2

我正在使用JqGrid 的 ASP.NET 包装器。我想以编程方式为一些网格事件(例如gridCompleteresizeStop)连接处理程序。

我见过的所有示例都让您在创建网格对象时将事件作为选项的一部分 - 例如:

$("#gridid").jqGrid({
   ...
   onSelectRow: function(){ ... },
   ...
});

但是,ASP.NET 组件为我完成了这个初始设置。我可以在组件上自定义一些客户端处理程序,例如gridInitialized;但是(奇怪的是)只有一小部分事件以这种方式暴露出来。

所以:一旦网格初始化,有没有办法将处理程序附加到它的事件上?我试过像

$grid.setGridParam("resizeStop", function () { alert("!!") }); // DOESN'T WORK

$grid.resizeStop = function () { alert("!!") }; // DOESN'T WORK

当然还有标准的 jQuery 事件绑定语法

$grid.bind("resizeStop", function () { alert("!!") }) // DOESN'T WORK

但这些都不起作用。

有任何想法吗?

4

1 回答 1

2

您可以更改有关setGridParam方法的事件处理程序(请参阅关闭问题Add an event handler to jqGrid after instantiation)。对于 jqGrid 的商业和开源版本,它必须以相同的方式工作。只需尝试以下操作:

$('#gridid').jqGrid('setGridParam', { resizeStop: function(newwidth, index) {
    alert("The column with the index " + index + " has now the width " + newwidth);
} } );
于 2010-07-29T08:13:09.340 回答