Kaminari与AJAX,无法分页

时间:2013-01-07 18:33:10

标签: ruby-on-rails ruby ajax kaminari paginate

我在这里遵循了AJAX Kaminari示例:https://github.com/amatsuda/kaminari_example/tree/ajax

我已经成功生成了部分和表格。但是,按分页中的页面不会更新我的表格。实际上,在按下时,查询就是完全相同的数据。

我发现了类似的问题,但解决方案仍然没有答案: kaminari ajax pagination not updating the paginate

我可以验证我正在使用#paginator元素。

我做的有些不同的事情不是创建一个单独的js.erb文件,而是添加了

<script>

$('#paginator').html('<%= escape_javascript(paginate(@pending_requests, :remote => true).to_s) %>');
$('#requests').html('<%= escape_javascript render (@pending_requests) %>');

</script>

在我的html.erb文件的末尾。

此外,在视图中,我使用ajax请求来选择表中的不同数据。例如,我有一个select_tag,在选择用户时,在视图中使用AJAX呈现相应的表。该表不是局部的,它在控制器中有自己的视图和方法。起初我怀疑是因为这个,表没有更新。但是,如果我去表格网址,我仍然无法使用分页!

编辑:我可以右键单击分页链接并将其打开到另一个选项卡。点击它们仍然没有做任何事情。

编辑:

我想补充说我正在使用Twitter Bootstrap。我注意到如果我在控制器中设置

format.html { render :layout => false }

然后我打开其中一个分页链接到另一个页面,我可以成功分页。我正在使用Kaminari bootstrap主题...

1 个答案:

答案 0 :(得分:1)

我没有看到添加评论的地方,所以这不是一个真正的答案。

只用AJAX渲染表吗?是另一页的部分内容吗?或者是一个独立的观点?

我遇到了类似的问题(在你的Kaminari标签页面link之前的最后一篇文章中,我可以选择在展览视图中将表格渲染为部分页面,也可以作为单独的页面。我结束了,就像你添加了一个脚本标签一样,但你的文件就没有包含在文档就绪函数中,所以页面可能没有完全加载。试试。

<script type="text/javascript" charset="utf-8">
  $(document).ready(function() {
    $('#paginator').html('<%= escape_javascript(paginate(@pending_requests, :remote => true).to_s) %>');
    $('#requests').html('<%= escape_javascript render (@pending_requests) %>');
  })
</script>