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

Javascript Jquery.change()以查看当前分配的方法,javascript,jquery,Javascript,Jquery,是否有任何方法可以查看分配给更改事件的当前方法。 我试过了 $('#select').change() 但这只是给我返回了改变事件。我真的不需要这样做,但这将是非常方便的调试。省得我通过代码查找方法,这样我就可以简单地搜索方法中的文本并快速找到方法 $('#select').data('events').change; 这将包含一个对象数组,每个事件处理程序一个 如果确定只有一个更改事件处理程序,则可以直接访问该函数: var theFunction = $('#select').data

是否有任何方法可以查看分配给更改事件的当前方法。 我试过了

$('#select').change()
但这只是给我返回了改变事件。我真的不需要这样做,但这将是非常方便的调试。省得我通过代码查找方法,这样我就可以简单地搜索方法中的文本并快速找到方法

$('#select').data('events').change;
这将包含一个对象数组,每个事件处理程序一个


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

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

请参见此处的操作:

对Joseph的答案稍作修改,即可输出函数的实际代码:

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


这里有一个演示:

只针对任何潜伏者,这在文档化的jQuery API中没有。如果您只是调试,没有问题,但如果您将其用于生产,它可能会突破1.8。@DaveMethvin谢谢Dave,这是非常有用的评论。