Advertisement
Guest User

Pagination

a guest
Sep 27th, 2018
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. JQUERY HANDLING THE LOAD MORE //USING DATA-ID ('POST->ID')
  2. <script>
  3. $(document).ready(function(){
  4.    $(document).on('click','#btn-more',function(){
  5.        var id = $(this).data('id');
  6.        var page = 1;
  7.        $("#btn-more").html("Loading....");
  8.        $.ajax({
  9.            url : '{{ url("loadpost") }}',
  10.            method : "GET",
  11.            data : {_token:"{{csrf_token()}}", 'page': window.current_page + 1},
  12.            dataType : "text",
  13.            success : function (data)
  14.            {
  15.               if(data != '')
  16.               {
  17.                   $('#remove-row').remove();
  18.                   $('#load-data').append(data);
  19.               }
  20.               else
  21.               {
  22.                   $('#btn-more').html("No More Post");
  23.               }
  24.            }
  25.        });
  26.    });  
  27.    </script>
  28.  
  29.  
  30. THE LOAD MORE BUTTON ITSELF
  31.                             <div class="about_memeber" id="remove-row" data-aos="fade-up" data-aos-duration="1500">
  32.                                 <button class="btn btn--secondary" id="btn-more" data-id="{{ $post->id }}"> Load more </button>
  33.                             </div>
  34.  
  35.  
  36. THE VIEW FOR BLOG
  37.                         <div class="clipcard posts pagination" id="load-data" data-aos="fade-up" data-aos-duration="1500" data-next-page="{{ $posts->nextPageUrl() }}">
  38.                                @foreach($posts as $post)
  39.                                 <div class="clipcard__body">
  40.                                     <a href="{{route('blog', $post->slug)}}" class="hover-_effeft">
  41.                                         <div class="row margin-bottom margin-top">
  42.                                             <div class="col-12 col-md-4">
  43.                                                 <div class="blog_img_container">
  44.                                                     <div class="blog-image" style="background-image:url('/images/{{$post->image}}');">                   
  45.                                                     </div>
  46.                                                 <div class="author">
  47.                                                 <span>Written by {{$post->user->name}}</span><span> {{ date('F d, Y',  strtotime($post->publish)) }}</span>
  48.                                                 </div>
  49.  
  50.                                             </div>
  51.                                             <div class="col-12 col-md-4">
  52.                                                 <div class="blog-title">
  53.                                                     <h2>{{$post->title}}</h2>
  54.                                                 </div>
  55.                                             </div>
  56.                                             <div class="col-12 col-md-4">
  57.                                                 <div class="blog-content">
  58.                                                     <p>
  59.                                                         {!!$post->excerpt!!}
  60.                                                     </p>
  61.                                                 </div>
  62.                                             </div>
  63.                                         </div>
  64.                                     </a>
  65.                                 </div>
  66.                               @endforeach
  67.                             </div>
  68.  
  69.  
  70. THE PUBLIC FUNCTION IN MY CONTROLLER
  71.  
  72. public function loadPost(Request $request)
  73.     {
  74.         $output = '';
  75.         $id = $request->id;
  76.        
  77.        
  78.         $posts = post::where('id','<',$id)having('status',1)
  79.                         ->orderBy('publish','DESC')->paginate(8)->get();
  80.        
  81.         if(!$posts->isEmpty())
  82.         {
  83.             foreach($posts as $post)
  84.             {
  85.                 $url = url('/images/'.$post->image);
  86.                 $body = str_limit(strip_tags($post->body), 350);
  87.                
  88.                 $output .= '<div class="clipcard__body">
  89.                <a href="'.route('blog', $post->slug).'" class="hover-_effeft">
  90.                <div class="row margin-bottom margin-top">
  91.                <div class="col-12 col-md-4">
  92.                <div class="blog_img_container">
  93.                <div class="blog-image" style="background-image:url('.$url.');"></div>
  94.                </div>
  95.                <div class="author">
  96.                <span>Written by '.$post->user->name.'</span><span> '.date('F d, Y',  strtotime($post->publish)).'</span>
  97.                </div>
  98.                </div>
  99.                <div class="col-12 col-md-4">
  100.                <div class="blog-title">
  101.                <h2>'.$post->title.'</h2>
  102.                </div>
  103.                </div>
  104.                <div class="col-12 col-md-4">
  105.                <div class="blog-content">
  106.                <p>
  107.                '.$body.'
  108.                </p>
  109.                </div>
  110.                </div>
  111.                </div>
  112.                </a>
  113.                </div>';
  114.             }  
  115.            
  116.             $output .= '
  117.            <div class="about_memeber" id="remove-row" data-aos="fade-up" data-aos-duration="1500">
  118.            <button class="btn btn--secondary" id="btn-more" data-id=" '.$post->id.'"> Load more </button>
  119.            </div>';
  120.             echo $output;          
  121.         }
  122.  
  123. THIS IS MY ROUTE FOR AJAX POST
  124. Route::post('loadpost','UserController@loadPost' );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement