Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用ajax分页可以工作,但下一页显示所有左侧页面,而不是一次只显示一个页面_Javascript_Jquery_Ajax_Laravel 4_Pagination - Fatal编程技术网

Javascript 使用ajax分页可以工作,但下一页显示所有左侧页面,而不是一次只显示一个页面

Javascript 使用ajax分页可以工作,但下一页显示所有左侧页面,而不是一次只显示一个页面,javascript,jquery,ajax,laravel-4,pagination,Javascript,Jquery,Ajax,Laravel 4,Pagination,我制作了一个laravel网站,它使用laravel的分页和jquery ajax在滚动到底部时加载下一页。 它确实成功了,但下一页只是加载所有剩余内容,而不是一次加载一页。此外,当我向下滚动时,它会继续加载,它不会停止。我不知道有什么问题 //需要自动加载的post home <section class="mainContent"> @foreach($posts as $post) <article class="articleList"

我制作了一个laravel网站,它使用laravel的分页和jquery ajax在滚动到底部时加载下一页。
它确实成功了,但下一页只是加载所有剩余内容,而不是一次加载一页。此外,当我向下滚动时,它会继续加载,它不会停止。我不知道有什么问题

//需要自动加载的post home

  <section class="mainContent">
      @foreach($posts as $post)
         <article class="articleList">
              {{$post->user->username}}
               ....
         <article>
      @endforeach
   </section>

   <section class="postHomeBottom">
       {{$posts->links()}}    
    </section>

@foreach($posts作为$post)
{{$post->user->username}
....
@endforeach
{{$posts->links()}
//ajaxPost ajax/products页面

  @foreach($posts as $post)
     <article class="articleList">
          {{$post->user->username}}
           ....
     <article>
  @endforeach

 {{$posts->links()}}
@foreach($posts as$post)
{{$post->user->username}
....
@endforeach
{{$posts->links()}
//jquery ajax代码

var page = 1;

function getProducts(page){
    console.log('getting products for page = ' + page);
    $.ajax({
        url: 'http://localhost/html5lav/public/ajax/products?page=' + page
    })
    .done(function(data){
      if(data != ''){
            console.log(data);
            $('.articleList').append(data);
             location.hash = page;

              flag = true;

            $('.pagination').hide();          
      }else{
            $('<div class="well">No more feeds</div>').insertBefore('.pagination');
            $('.pagination').remove();       
      }  

    })


}

$(document).on('click','.pagination li:last-child a', function(e){

    e.preventDefault();
    //console.log($(this).attr('href').split('page='));
    //var page = $(this).attr('href').split('page=')[1];
    getProducts(page);


});



var flag = true;

$(window).scroll(function(){


 if($(window).scrollTop() + $(window).height() == $(document).height()){

          page =page + 1;

           var active = $('.pagination li:last-child').hasClass('active');

           if(flag && !active){
              flag = false;
              $('.pagination li:last-child a').trigger('click');
           }
           //return;


    }
});
var-page=1;
功能产品(第页){
log('get products for page='+page);
$.ajax({
网址:'http://localhost/html5lav/public/ajax/products?page=“+第页
})
.完成(功能(数据){
如果(数据!=''){
控制台日志(数据);
$('.articleList')。追加(数据);
location.hash=页面;
flag=true;
$('.pagination').hide();
}否则{
$('No more feed').insertBefore('.pagination');
$('.pagination').remove();
}  
})
}
$(文档).on('单击',')。分页li:最后一个子项a',函数(e){
e、 预防默认值();
//console.log($(this.attr('href').split('page='));
//var page=$(this.attr('href').split('page=')[1];
采购产品(第页);
});
var标志=真;
$(窗口)。滚动(函数(){
if($(窗口).scrollTop()+$(窗口).height()==$(文档).height()){
页码=页码+1;
var active=$('.pagination li:last child')。hasClass('active');
如果(标志&激活){
flag=false;
$('.pagination li:last child a')。触发器('click');
}
//返回;
}
});

使用时。追加每次单击li:last a.时,代码都会追加数据。。因此,您可以使用.html()而不是.append()。。或者设置一个条件,比如将每个加载的页面放在div中,只显示您需要的div@Mohamed,我需要它像twitter一样将其附加到底部,如果使用html,则原始内容将被删除。您需要检查是否正确限制了查询,由于您没有放入php代码,我们无法告诉您在使用时问题在哪里。追加代码将在每次单击li:last a.时追加数据。。因此,您可以使用.html()而不是.append()。。或者做一个条件,比如把每个加载的页面放在div中,只显示你需要的div@Mohamed,我需要它像twitter那样将它附加到底部,如果使用html,那么原始内容就可以了。你需要检查你是否正确地限制了你的查询,因为你没有把你的php代码放进去,我们无法告诉你问题出在哪里