Jquery .change()查看当前分配的方法

时间:2012-01-18 20:00:37

标签: javascript jquery

有什么办法可以查看分配给选择更改事件的当前方法。 我试过了。

$('#select').change()

但这只会让我知道更改事件。我真的不需要这样做但是非常方便调试。救我狩猎通过代码找到方法,这样我就可以简单地搜索方法中的文本并快速找到方法。

2 个答案:

答案 0 :(得分:2)

$('#select').data('events').change;

这将包含一个对象数组,每个事件处理程序一个。


如果您确定只有一个更改事件处理程序,则可以直接访问该函数:

var theFunction = $('#select').data('events').change[0].handler;

在此处查看:[{3}}

答案 1 :(得分:1)

对Joseph的回答略有改动,将输出函数的实际代码:

var clickEvents = $('#select').data("events").change;
$.each(clickEvents, function(key, handlerObj) {
    console.log(handlerObj.handler) // prints actual function code, does not run function
})

来源:How to debug JavaScript/jQuery event bindings with Firebug (or similar tool)

以下是演示:http://jsfiddle.net/7UD3e/2/