[英]ruby if statment for js.erb file
任何人都可以协助我设置我的js.erb文件以涵盖两种情况。
目前,当页面最初加载时,我可以进行无限滚动,但是当我更改参数时,新集合可以很好地加载,但是当我向下滚动页面以加载其余结果时,我仅获得下一组6个对象来替换最后,而不是将它们附加到末尾
rehome.js.erb
$('.all_animals').append("<%= j render @animals %>");
<% if @animals.next_page %>
$('.pagination').replaceWith('<%= j will_paginate @animals %>');
<% else %>
$(window).off('scroll');
$('.pagination').empty();
<% end %>
Java脚本
function infiniteScroll() {
if($('#infinite-scrolling').size() > 0) {
$(window).on('scroll', function(){
//Bail out right away if we're busy loading the next chunk
if(window.pagination_loading){
return;
}
more_url = $('.pagination a.next_page').attr('href');
if(more_url && $(window).scrollTop() > $(document).height() - $(window).height() - 50){
//Make a note that we're busy loading the next chunk.
window.pagination_loading = true;
$('.pagination').text('Loading.....');
$.getScript(more_url).always(function(){
window.pagination_loading = false;
});
}
});
}
}
所以在页面加载时我调用函数
$(function(){
infiniteScroll();
});
并作为ajax成功回调
success: function(data) {
infiniteScroll();
}
当进行ajax调用时,params:rehomed始终存在,因此我可以在其中包装单独的逻辑
<% if params[:rehomed].present? %>
<% end %>
有谁对我的rehome.js.erb文件中的新加载内容有任何想法
谢谢
更新资料
所以在页面加载时我需要这是逻辑
$('.all_animals').append("<%= j render @animals %>");
<% if @animals.next_page %>
$('.pagination').replaceWith('<%= j will_paginate @animals %>');
<% else %>
$(window).off('scroll');
$('.pagination').empty();
<% end %>
当我需要更新集合时
$('.all_animals').empty();
$('.all_animals').append("<%= j render @animals %>");
<% if @animals.next_page %>
$('.pagination').replaceWith('<%= j will_paginate @animals %>');
<% else %>
$(window).off('scroll');
$('.pagination').empty();
<% end %>
我如何尝试将它们组合成一个陈述
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.