4

需要注意的是,我对使用 Firebug 不是很熟练,但是我没有发现任何解释以下问题的错误。

我有一个feed.js.erb包含以下代码的文件:

var $foos = $('<%= escape_javascript(render(@foos)) %>');
$('#container').append($foos);
$('#pagination_button a').attr('href', '<%= feed_path + '?page=' + @page %>');

当这个 ajax 调用第二次时,它似乎默默地失败了。我在 Firebug 控制台中看到了适当的响应,但$foos没有更改,因此#container从未附加。

我的 html 页面仅包含一个加载指示器,它在第一次调用时成功替换。第二个调用是从其他 javascript ( Infinite Scroll ) 触发的。

如果重要的话,我注意到第一次调用是使用自动生成的时间戳参数进行的。之后,我将替换目标网址,如您在我的#pagination_button a.

如何在浏览器中调试它?

更新:我使用 ERB 制作$foos了一个动态变量 ($foos1...$foos2) 并注意到这也不起作用。因此,即使新@foos的在控制台的响应中可见,我的 javascript 的第一行也没有被评估。

4

1 回答 1

3

事实证明,Rails 没有将我的第二个请求作为 JS 处理。更重要的是,如果 JS 引发异常,它将被转换为纯文本,如此处所述Steve还展示了如何调试 ajax 代码,有效地回答了我的两个问题。

于 2012-05-14T00:54:22.443 回答