0

我是 Rails 新手,我正在尝试执行 ajax 请求。如果我错了,请纠正我,但据我所知,请求应该通过使用 :remote true 的 link_to 执行。

我有这行代码,它链接到所需的页面:

    link_to 'Log Out',{:controller=>"ajax_handlers", :action=>"logout"}, :class=>'navButton', :remote=>true

但是,当我单击该链接时,它仍会导航到注销页面。我看到其他帖子表明这是由语法错误引起的,该错误导致 :remote => true 作为查询参数添加到 url。但是,html 呈现为:

    <a href="/logout" class="navButton" data-remote="true">Log Out</a>

在我看来,它应该可以工作。

最后一点:我看到帖子说由于 jQuery 配置的一些问题,他们无法让它工作。但是,我没有使用 jQuery(可能是 javascript 配置错误,但我不知道)。

提前致谢。

4

1 回答 1

0

在 Rails 3 中,:remote => true必然需要 jQuery 和 jquery-ujs。您需要加载它们才能获得您正在寻找的功能,即使您最终没有使用 jQuery。

假设您在 Rails >3.1 上,您正在使用资产管道。默认情况下,application.js清单文件将加载您需要的所有文件。application.js通过将以下标记添加到您的application.html.erb布局来包含该文件:

# app/views/layouts/application.html.erb
<%= javascript_include_tag :application %>
于 2013-06-16T04:15:41.647 回答