【发布时间】:2011-12-30 02:50:55
【问题描述】:
在我数千行 javascript 中的某处,正在进行 ajax 调用。我一生都无法弄清楚它是从哪里来的。它似乎在页面加载后立即发生。
我可以在 firebug 中看到正在进行 ajax 调用。 ajax 调用总是请求当前页面。因此,例如,一旦 users#new 加载,它就会请求 users#new.js,并且对所有其他控制器和操作也执行相同操作。
有没有一种方法可以确定它在代码中的哪个位置被调用?
【问题讨论】:
-
根据所调用的控制器操作将其隔离
-
它发生在每个页面/操作上
-
我想你误会了。你说你可以在 Firebug 中看到一个 ajax 调用,对吧?因此,请检查该 ajax 调用中请求的路径,并将其隔离到某个控制器/操作。例如,如果 AJAX 调用命中服务器日志中的
/users/new路径,那么它可能与users#new操作有关。这应该允许您隔离哪些 JS 代码可以进行该调用。 -
我不清楚 :) ajax 调用总是请求当前页面。因此,一旦 users#new 加载,它就会要求 users#new.js 与所有其他控制器和操作相同。
-
好吧,这不好:) 可能想要查看您的代码以查找未将 ajax 调用包含在 javascript 单击(或其他事件)处理程序中的区域。如果它发生在 DOM 加载时,那么它必须在不依赖于某个事件(点击、更改等)发生的情况下发生。
标签: javascript ruby-on-rails ajax ruby-on-rails-3