gpt4 book ai didi

jquery - Rails3/will_paginate/Ajax - 下一个/上一个链接无法正常工作(这是一个错误吗?)

转载 作者:行者123 更新时间:2023-12-01 03:53:28 25 4
gpt4 key购买 nike

我正在关注我的 Rails 3 应用程序的“Pagination with ajax”railscast。一切似乎都工作得很好,除了上一个和下一个链接根本不起作用。

基本上,

  • 即使我点击其他页面,上一个链接也会卡住(当我在用户/显示页面1时)

  • “下一个链接”只能工作一次,直到第 2 页(之后就无法使用了)

  • 当我到达“...”时,数字没有更新

我很高兴知道是否有人遇到同样的问题(错误?)或者我的代码是否错误。我使用 will paginate(“~> 3.0.pre2”和 jquery 1.8.10)来获取依赖于用户的微帖子列表。

非常感谢您的帮助!

这里是代码:

layout_helper.rb

module LayoutHelper
def javascript(*args)
content_for(:head) { javascript_include_tag(*args) }
end
end

users_controller.rb

def show
@user = User.find(params[:id])
@microposts = @user.microposts.paginate(:per_page => 10, :page => params[:page])
end

microposts/_micropost.html.erb

...

用户/show.html.erb

<% javascript "pagination" %>

...

<%= will_paginate @microposts %>
<ul id="feed_items">
<%= render @microposts %>
</ul>

用户/show.js.erb

$("#feed_items").html("<%= escape_javascript(render @microposts ) %>");

分页.js

$(document).ready(function() {
$(".pagination a").live("click", function() {
$.get(this.href, null, null, "script");
return false;
});
});

最佳答案

或者,如果您想坚持使用 will_paginate,有一个简单的修复方法。只需将您的辅助方法放入 div 中,如下所示:

<div id="page_links">
<%= will_paginate @microposts %>
</div>

然后,在 js.erb 文件中将此行添加到末尾:

$('#page_links').html('<%= escape_javascript(will_paginate @microposts) %>');

无论如何,您已经传递了页面和所有正确的参数,因此这只会强制 View 链接正确更新。

关于jquery - Rails3/will_paginate/Ajax - 下一个/上一个链接无法正常工作(这是一个错误吗?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5371911/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com