这是我的blog_post_inner.js:\
$(document).ready(function () {
// when the load more link is clicked
$('a.load-more').click(function (e) {
// prevent the default click action
e.preventDefault();
// hide load more link
$('.load-more').hide();
// show loading gif
$('.loading-gif').show();
// get the last id and save it in a variable 'last-id'
var last_id = $('.record').last().attr('data-id');
// make an ajax call passing along our last user id
$.ajax({
// make a get request to the server
type: "GET",
// get the url from the href attribute of our link
url: $(this).attr('href'),
// send the last id to our rails app
data: {
id: last_id
},
// the response will be a script
dataType: "script",
// upon success
success: function () {
// hide the loading gif
$('.loading-gif').hide();
// show our load more link
$('.load-more').show();
}
});
});
});
在blog_post_inner里面我定义了主要的ajax。
我在blog_post_inner.html.erb中调用它:
<div class="load-more-container">
<!-- hide our loading gif image so that we show it when making ajax call via jquery -->
<%= image_tag "ajax-loader.gif", style: "display:none;", class: "loading-gif" %>
<%= link_to_next_page articles,"Load More" ,class: "load-more" %>
</div>
但主要问题是我的ajax没有在同一网页中加载页面而是重新加载/刷新/重定向到第二页。
怎么办?
我们已尝试将 link_to_next_page 更改为 link_to ,但却出错了:
#的未定义方法`to_model' 你的意思是? to_xml
请帮助我的ajax不工作我尝试了很多不同的方法,但没有一个被证明是有用的。
我按照这篇文章来实现这个: http://josephndungu.com/tutorials/rails-load-more-results-using-jquery-ajax