调用doubleclick事件

时间:2012-12-19 21:05:49

标签: jquery jqgrid

如何在jqGrid中触发“ondblClickRow”事件?我需要在单击按钮时调用该行的双击事件处理程序。

button:
<a class="btn" id="shwDetails" type="button>Details</a>

grid:
$("#gridX").jqgrid({
...
...
ondblClickRow : function(rowID, iRow, iCol, e){
// event handler
fetchRowData(rowID);
}

...
...
});

以下似乎不起作用。

$('#gridX').trigger( 'jqGridDblClickRow' ); 
$('#gridX').trigger( 'ondblClickRow' );

提前致谢。

2 个答案:

答案 0 :(得分:2)

我的特殊情况是,您可以直接调用函数fetchRowData,而不是“触发ondblClickRow事件”。

如果其他一些代码创建了jqGrid并且你真的需要“触发”回调函数ondblClickRow(不是事件),你可以执行以下操作:

var ondblClickRowHandler = $("#gridX").jqGrid("getGridParam", "ondblClickRow");

ondblClickRowHandler.call($("#gridX")[0], rowID);

答案 1 :(得分:0)

ondblClickRow是否需要这些变量中的一个,部分或全部?

var rowID =  ,//your rowID
    iRow =  ,//your iRow 
    iCol =  ,//your iCol
    e; 
$('#gridX').trigger( 'jqGridDblClickRow', [rowID, iRow, iCol, e]);

这里的文档:http://api.jquery.com/trigger/

不过,小心:

  

“事件对象始终作为事件的第一个参数传递   handler,但是如果在a期间指定了其他参数   .trigger()调用,这些参数将被传递给处理程序   同样。要传递多个参数,请使用此处所示的数组。   从jQuery 1.6.2开始,可以在不使用的情况下传递单个参数   阵“。