我有一个使用 will_paginate 分页的项目列表,这很好用。我终于按照railscast的说明实现了 AJAX ,它就像一个魅力。但是,现在,当我导航到某个项目的页面,然后单击“返回”链接时,页面和排序都丢失了。
例如,在书籍列表中,如果我按标题对它们进行排序并转到第二页,然后单击一本书,则效果很好。然后,当我单击“返回”时,我将返回列表的第一页而不进行排序。我知道这是因为 URL 不再使用 AJAX 调用更新。
如何在我的 Rails 应用程序中使用 AJAX 维护反向链接的分页和排序?
这是我用来实现 AJAX 的代码:
结果.js.erb:
$("#search_results").html("<%= escape_javascript(render :partial => "layouts/search_results_list").html_safe %>");
分页.js:
$(function() {
$("#search_results").on("click", ".sort a, .pagination a", function() {
$.getScript(this.href);
return false;
});
});
从书页,我简单地使用:
request.referer
返回列表。