jQuery获取元素的当前click事件并追加到它

时间:2009-08-14 20:14:57

标签: jquery jqgrid

当网格完成渲染时,我正在使用jqGrid并将自己的onclick事件添加到每个数据单元。

jqGrid具有突出显示行onclick的默认行为。当我在网格渲染后添加自己的onclick事件时,我的事件会按预期覆盖jqGrid事件。我想保留jqGrid onclick事件,只需将我的事件添加到它。

如何获取与特定类匹配的所有元素的当前onclick事件,并为事件添加更多操作?这是我目前新的onclick事件。

谢谢!

$(".searchOrders").click(function() {
    $('#tabs').tabs('url', 2, '/view/dspOrders.cfm?id_orders='+$(this).attr('title'));
    $('#tabs').tabs('select', 2);
});

3 个答案:

答案 0 :(得分:3)

jQuery事件绑定机制不是覆盖的机制。换句话说:

 $("#button").click(function() { alert("hello"); });
 $("#button").click(function() { alert("goodbye"); });

在#button上触发了两个事件,第二个事件没有覆盖第一个事件。

此处还有其他事情发生。

答案 1 :(得分:3)

使用jqGrid onCellSelect事件。 jqGrid Docs

答案 2 :(得分:0)

您可以调整我用于插入加载事件的一些代码:

// stack the original loads
var aryLoadQueue = new Array();
$.each($.data($main.get(0), "events").load, function() {
    aryLoadQueue.push(this);
});

...

// put the original loads back in place to take place after our one-time load
$(aryLoadQueue).each(function() {
    $main.load(this);
});

随时对问题发表评论......