从ajax和jquery结合rails开始,我试图在我的用户索引页面底部创建一个"加载更多"链接.我的用户索引页面应显示10个第一个用户,然后单击它加载用户div底部的下10个用户的链接等.我使用Kaminari进行分页.
我从以下代码开始:
def index
@users = User.page(params[:page]).per(10)
end
Run Code Online (Sandbox Code Playgroud)
<div id="users">
<%= render :partial => @users %>
</div>
<%= link_to "Load more", "#", :class => "next" %>
Run Code Online (Sandbox Code Playgroud)
<div id="box">
<%= link_to full_name(user), user %>
</div>
Run Code Online (Sandbox Code Playgroud)
我发现这个片段(信用:这里)试图满足我的需要:
function loadMore(pageNo) {
var url = '/users?page=';
$.get(url + pageNo, function(response) {
$("#users").append(response);
});
}
$(document).ready(function() {
var currPage = 1;
$("a.next").click(function() {
loadMore(++currPage);
});
});
Run Code Online (Sandbox Code Playgroud)
我工作得很完美,除了它加载所有页面布局与下一个结果不仅我的_user部分中的框div我 如何管理这个?我是否必须创建一个index.js.erb(类似于:page.insert_html:bottom,:users,:partial => @users但是在jquery中,如果是这样,我该怎么办)?
谢谢你的帮助