javascript - button_to 上的 remote true 不进行 ajax 调用

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

我正在做一个小型 Rails 应用。

我正在尝试进行 ajax 调用。 尽管我使用 remote: true button_to 正在发出非 ajax 请求。它将我重定向到这个 url 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

有什么想法吗?

谢谢!

---编辑--- 这是我的 application.js

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

最佳答案

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

在您的 application.js 中,您需要 javascript:

= require jquery
= require jquery_ujs

这应该是:

//= require jquery
//= require jquery_ujs

正确加载 jquery 后,按钮的行为应该符合预期。

关于javascript - button_to 上的 remote true 不进行 ajax 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32780589/

相关文章:

ruby-on-rails - 从 YAML 加载 ActiveRecord 对象时出现反序列化错误

ruby-on-rails - RSpec ActiveStorage:错误 ActiveRecord::RecordNotFound:找不到 ActiveStorage::Blob 为 'id'

javascript - 获取所有选择/选项列表以某物开头

javascript - Internet Explorer 未精确设置 <img> src,将 %7E 转换为 ~

javascript - 错误 : TypeError: undefined is not an object in Java Script

javascript - Userscript - 有没有办法将 jquery 代码注入(inject)到 angularjs dom 中?

javascript - 如何在 JQuery Mobile 的 ListView 中拥有自定义按钮?

javascript - 如何使用调度事件 d3js 更新图表中的轴

javascript - 使用多选更改图像源

ruby-on-rails - 如何测试在不同实例上使用不同参数接收相同方法