button_to上的remote true不进行ajax调用

时间:2015-09-25 10:53:46

标签: javascript jquery ruby-on-rails ajax button-to

我正在做一个小型应用程序。

我正在尝试进行ajax调用。 尽管我使用remote: true,button_to正在发出非ajax请求。它会将我重定向到此网址http://localhost:3000/lines?product_id=1

<% @products.each do |product| %>
  <%= link_to product.name, controller: "store", action: "show", id: product %><br>
  <%= button_to "Add to Cart", {controller: "lines", action: "create", product_id: product.id}, method: "POST", remote: true %>
<% end %>

github repo

有什么想法吗?

谢谢!

--- --- EDIT 这是我的application.js

= require jquery
= require jquery_ujs
//= require turbolinks
//= require_tree .

1 个答案:

答案 0 :(得分:2)

这样的问题通常是因为您没有正确加载jquery。 button_to ... remote: true成为ajax调用,因为remote: true会触发更改按钮行为的javascript。

application.js中,您需要使用javascript:

= require jquery
= require jquery_ujs

这应该是:

//= require jquery
//= require jquery_ujs

正确加载jquery后,您应该按钮按预期运行。