如何以编程方式处理 JqGrid 事件?

2024-06-20

我正在使用JqG​​rid 的 ASP.NET 包装器 http://www.trirand.net/demoaspnet.aspx。我想以编程方式连接一些网格的处理程序events http://www.trirand.com/jqgridwiki/doku.php?id=wiki:events (e.g. gridComplete, resizeStop).

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

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

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

那么:一旦网格初始化,有没有办法将处理程序附加到其事件?我尝试过类似的事情

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

and

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

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

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

但这都不起作用。

有任何想法吗?


您可以更改事件处理程序setGridParam方法(参见一个封闭的问题实例化后向 jqGrid 添加事件处理程序 https://stackoverflow.com/questions/3148320/add-an-event-handler-to-jqgrid-after-instantiation/3149534#3149534)。对于 jqGrid 的商业版本和开源版本,它必须以相同的方式工作。只需尝试以下操作:

$('#gridid').jqGrid('setGridParam', { resizeStop: function(newwidth, index) {
    alert("The column with the index " + index + " has now the width " + newwidth);
} } );
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何以编程方式处理 JqGrid 事件? 的相关文章

随机推荐