2016-06-02 9 views
-1

デフォルトのlaravelページネーションをajax経由でページを更新しないようにしたいのですが、エラーが発生しました。 私はそれが問題だかわからない500エラーLaravelのAjaxページネーションの問題5.2

GET http://localhost:8000/stock?page=2 500 (Internal Server Error) 

を示す2ページをクリックしたとき。

これは私のコントローラである:

public function index() 
{ 
    $menu = 'stock'; 
    $sub_menu = 'stock_list'; 
    $category = DB::table('categories')->select('cat_id','category_name')->get(); 
    $units = DB::table('units')->select('unit_id','unit_name')->get(); 
    $brands = DB::table('brands')->select('bid','brand_name')->get(); 
    $purchase_type = DB::table('purchase_types')->select('pt_id','type')->get(); 

    $items = DB::table('items') 
     ->join('categories','categories.cat_id','=','items.category_id') 
     ->join('units','units.unit_id','=','items.unit_id') 
     ->select('items.*','categories.cat_id','categories.category_name','units.unit_id','units.unit_name') 
     ->where('items.quantity','>',0) 
     ->paginate(1); 
    $total = Item::where('status', 0)->count(); 
    if (Request::ajax()) { 
     return Response::json(view('partials.pagination')->with(compact('items','total'))->render()); 
    } 
    return view('stock.stock-list', compact('items','category', 'purchase_type', 'units','brands','total','menu', 'sub_menu')); 
} 

とJSコード:

$(document).ready(function(){ 
    $(window).on('hashchange',function(){ 
    page = window.location.hash.replace('#',''); 
    getItems(page); 
}); 
$(document).on('click','.pagination a', function(e){ 
    e.preventDefault(); 
    var page = $(this).attr('href').split('page=')[1]; 
    // getItems(page); 
    location.hash = page; 
}); 
function getItems(page){ 
    $.ajax({ 
     url: '/stock?page=' + page 
    }).done(function(data){ 
     $('#theContent').html(data); 
    }); 
} 

ビュー:

<div class="col-sm-6 text-right" id="pagination"> 
    {{ $items->links() }} 

</div> 
+0

そのPHPページネーションではないajaxページング – madalinivascu

+0

とあなたは、Ajaxを介してページ番号を維持することはできません – madalinivascu

+1

私はあなたが誤解していると思う、私は次のページデータをロードする場合は、 – Khodadad

答えて

0

戻るビューではありませんJSONオブジェクト

if (Request::ajax()) { 
     return view('partials.pagination')->with(compact('items','total'))->render(); 
    } 
+0

ハハ、ええ、ありがとう。 – Khodadad

関連する問題