jquery_ujs与Rails 4中的Kaminari AJAX冲突

jquery_ujs conflicts with Kaminari AJAX in Rails 4?

本文关键字:中的 Kaminari AJAX 冲突 Rails ujs jquery      更新时间:2024-01-03

短版本;jquery_ujs似乎与Kaminari的AJAX支持相冲突,我不知道为什么。

在我的Rails 4应用程序中,我的应用程序.js 中有以下几行

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

如果我删除jquery_ujs,那么下面的代码将停止工作;它开始发送GET请求而不是DELETE请求,每次发送GET请求时,用户只需接收资源的显示页面。

<%= link_to 'Delete Horse', horse, method: :delete, data: { confirm: 'Are you sure?' } %>

但如果我把jquery_ujs留在里面,Kaminari w/AJAX就停止工作了。。。。

<%= paginate @horses, :remote => true %>

单击时将不显示(尽管呈现的HTML中的HREF标记是正确的)。

如果我从paginate@marses链接中删除:remote=>true,则该链接开始工作。但是,A)为了用户体验,我希望AJAX能够工作,B)我想了解为什么会发生这种情况。

您需要拥有js.erb文件来处理来自Kaminari的请求。在js.erb中,您应该放置Javascript代码,用服务器中的新内容替换当前内容。

因此,在您的情况下,它以JS的形式发送请求,这是正确的行为。你可以在这里查看参考资料。http://jyothu-mannarkkad.blogspot.com/2013/06/rails-kaminari-ajax-pagination.html