我正在使用 JqGrid的ASP.NET包装器.我想以编程方式为某些事件(例如gridComplete,resizeStop).
I'm using the ASP.NET wrapper for JqGrid. I'd like to programmatically wire up handlers for some of the grid's events (e.g. gridComplete, resizeStop).
我所见过的所有示例都使您在创建网格对象时将事件连接作为选项的一部分-例如:
All the examples I've seen have you wire up the event as part of the options when creating the grid object - for example:
$("#gridid").jqGrid({ ... onSelectRow: function(){ ... }, ... });但是,ASP.NET组件会为我执行此初始设置.我可以在组件上自定义一些客户端处理程序,例如gridInitialized;.但是(很少)以这种方式公开了事件的一小部分.
However, the ASP.NET component does this initial setup for me. I can customize some client-side handlers on the component, like gridInitialized; but (bizarrely) only a small subset of the events are exposed this way.
因此:初始化网格后,是否可以将处理程序附加到其事件?我已经尝试过类似的事情
So: Once the grid has initialized, is there a way to attach handlers to its events? I've tried things like
$grid.setGridParam("resizeStop", function () { alert("!!") }); // DOESN'T WORK和
$grid.resizeStop = function () { alert("!!") }; // DOESN'T WORK当然还有标准的jQuery事件绑定语法
and of course the standard jQuery event binding syntax
$grid.bind("resizeStop", function () { alert("!!") }) // DOESN'T WORK但是这些都不起作用.
but none of this works.
有什么想法吗?
推荐答案您可以针对setGridParam方法进行更改事件处理程序(请参见在实例化后将事件处理程序添加到jqGrid ).对于商业版本和jqGrid的开源版本,它必须以相同的方式工作.只需尝试以下操作:
You can do change event handler with respect of setGridParam method (see a close question Add an event handler to jqGrid after instantiation). It must work on the same way for commertial and for the open source version of jqGrid. Just try following:
$('#gridid').jqGrid('setGridParam', { resizeStop: function(newwidth, index) { alert("The column with the index " + index + " has now the width " + newwidth); } } );更多推荐
如何以编程方式处理JqGrid事件?
发布评论