weixin_33743248 2017-11-14 23:11 采纳率: 0%
浏览 47

Laravel显示更多按钮

I do have two laravel collections

$posts = collect($instagramService->fetchPosts('username'))->take(10); 

and some more posts

$morePosts =  collect($instagramService->fetchPosts('username'))->slice(10);

I am displaying first collection on a blade:

@foreach($posts as $post)
   {{$post->url}}
   {{$post->likes}}
@endforeach

<button type="submit">Show More</button>

I am trying to research an ajax pagination but no luck so far, so if someone could help me here would be highly appreciated.

Question: when I click "Show More" I want to load the second collection?

  • 写回答

1条回答 默认 最新

  • weixin_33720956 2017-11-15 03:37
    关注

    button

    <button type="submit" class="clickMe">Show More</button>
    

    ajax

           $(".clickMe").click(function(){
        $.ajax({
                dataType: 'json',
                type:'GET',
                url: "{{ url('morePosts') }}",
              }).done(function(data){
                 var len=data.length
    console.log(len);
        //Perform ANy action after successfuly post data
          var rows = '';
    for(i=0;i<data.length;i++){
          rows = rows + 'data[i].url'
    }      
     $("#morePosts").html(rows);  
            });
    

    Route

     Route::get('/morePosts', 'PostController@morePosts');
    

    method in controller

    public function morePosts(){
       $data=  collect($instagramService->fetchPosts('username'))->slice(10);
    return response()->json($data);
    }
    

    html

    <div id="morePosts">
    </div>
    
    评论

报告相同问题?