eventos - jquery disable double click event
invocar un evento doubleclick (2)
¿Cómo disparo un evento "ondblClickRow" en jqGrid? Necesito invocar el controlador de eventos de doble clic de la fila con solo hacer clic en un botón.
button:
<a class="btn" id="shwDetails" type="button>Details</a>
grid:
$("#gridX").jqgrid({
...
...
ondblClickRow : function(rowID, iRow, iCol, e){
// event handler
fetchRowData(rowID);
}
...
...
});
Lo siguiente no parece estar funcionando.
$(''#gridX'').trigger( ''jqGridDblClickRow'' );
$(''#gridX'').trigger( ''ondblClickRow'' );
Gracias por adelantado.
¿El ondblClickRow necesita una, algunas o todas esas variables?
var rowID = ,//your rowID
iRow = ,//your iRow
iCol = ,//your iCol
e;
$(''#gridX'').trigger( ''jqGridDblClickRow'', [rowID, iRow, iCol, e]);
documentos aquí: http://api.jquery.com/trigger/
cuidado, sin embargo:
"El objeto de evento siempre se pasa como el primer parámetro a un controlador de eventos, pero si se especifican parámetros adicionales durante una llamada .trigger (), estos parámetros también se pasarán al controlador. Para pasar más de un parámetro, use una matriz como se muestra aquí. A partir de jQuery 1.6.2, se puede pasar un único parámetro sin utilizar una matriz ".
En su caso especial, puede llamar directamente a la función fetchRowData
lugar de "activar un evento ondblClickRow
".
Si algún otro código crea jqGrid y realmente necesita "activar" la función de devolución de llamada ondblClickRow
(no es un evento), puede hacer lo siguiente:
var ondblClickRowHandler = $("#gridX").jqGrid("getGridParam", "ondblClickRow");
ondblClickRowHandler.call($("#gridX")[0], rowID);