2

我的<form>提交没有做任何事情,我认为这是因为该操作被一些 JQuery 代码拦截(还能是什么?)。在我相当复杂的 Web 应用程序中,我什至找不到哪一行代码正在拦截该操作——是的,我写了每一行代码,但我仍然不知道。

问题是:一般来说,有没有一种有效的方法来跟踪哪一段 JavaScript 代码正在拦截指定的操作?

4

2 回答 2

9
console.log($('form').data('events'));

将为您提供给定 DOM 元素的附加事件列表。

你甚至可以得到它的源代码:

$.each($('form').data('events'), function () {
    $.each(this, function () {
        console.log(this['handler'].toString());
    });
});
于 2012-07-21T13:07:32.880 回答
2

一种快速简便的方法是使用 Google Chrome 的开发者工具。

  • Ctrl+ Shift+I
  • 选择你的元素。
  • 单击事件以查看可能正在“拦截”您的处理程序submit

在此处输入图像描述

于 2012-07-21T13:15:55.787 回答