【发布时间】:2023-03-26 01:10:01
【问题描述】:
我一直在阅读 SO 上的一些帖子,看看其他人是如何处理这个问题的,我正在使用的实现几乎就在那里,但在请求第三个链接后失败,会发生什么是页面被重新加载而不是触发 ajax要求。我也删除了 Turbolinks,但这并没有什么不同。
这是我的设置,我认为 js 在某个地方失败了,因为我的 jQuery 不是那么强大,我希望有人能帮忙
Index.html.erb
<div class="facebook_ajax">
<%= render 'shared/posts' %>
</div>
共享/_posts.html.erb
<% @posts.each do |p| %>
<article class="post">
<%= image_tag('/assets/vandals_fb_profile.jpg') %>
<%= link_to 'Varsity Vandals', "https://www.facebook.com/VarsityVandals", target: 'blank' %>
<%= date_output(p.created_time) %>
<figure>
<% if p.large_image_url? %>
<%= image_tag(p.large_image_url) %>
<% end %>
<% if p.video_url? %>
<%= raw youtube_embed(p.video_url) %>
<% end %>
</figure>
<p><%= p.message.gsub("\n", "<br>").html_safe %></p>
<% if p.description? %>
<p><%= p.description %></p>
<% end %>
<%= link_to 'Read More', p.link %>
</article>
<hr/>
<% end %>
<%= will_paginate @posts, previous_label: '', next_label: '', page_links: false %>
index.js.erb
$('.facebook_ajax').html("<%= escape_javascript(render("shared/posts"))%>")
jQuery
<script>
$(document).ready(function () {
$(".facebook_ajax .pagination a").on("click", function(){
$.getScript(this.href);
return false;
});
});
</script>
因此,当第一次点击下一个链接时,ajax 请求可以正常完成,但在第三次点击时页面重新加载并且 url 更改为
?_=1399027258398&page=3
请问有谁知道如何解决这个问题
谢谢
【问题讨论】:
标签: jquery ruby-on-rails ruby ruby-on-rails-4 will-paginate