2017-06-16 51 views
0

我想使用ajax函數(加載)來加載我的laravel中的頁面。這裏是我的html代碼Ajax函數與laravel

@section('content') 

<nav class="" id="menu"> 
    <ul class="nav nav-tabs" id="sub_menu"> 
     <li class="active"><a href="pages/home">Home</a></li> 
     <li><a href="pages/school">Create School</a></li> 
     <li><a href="pages/user">Create User</a></li> 
    </ul> 
</nav> <div id="page_loader"></div> 
@endsection 

這是我的控制器代碼

Route::get('pages/user', ['uses' => '[email protected]', 'as' => 'business.pages.user']); 
Route::get('pages/school', ['uses' => '[email protected]', 'as' => 'business.pages.school']); 
Route::get('pages/business', ['uses' => '[email protected]', 'as' => 'business.pages.home']); 

這裏是我的jQuery代碼:

$(document).ready(function(){ var trigger = $('#menu #sub_menu li a'), content = $('#page_loader');  
    trigger.on('click', function(){ 
     var $this = $(this), target = $this.attr('href'); 
     content.load(target); 
     return false; 
    });  
}); 

顯示我的網頁控制檯上的錯誤是:

jquery-3.2.1.min.js:4 GET http://127.0.0.1:8000/pages/pages/home 404(未找到)

+0

這看起來像是一個混淆相對路徑和絕對路徑的簡單情況。如果你已經在查看http:// localhost/pages/?,你認爲你最終點擊了? – sisve

回答

0

您正在使用您的導航鏈接相對引用,所以如果你在http://127.0.0.1:8000/pages/然後像pages/home任何鏈接將引導您http://127.0.0.1:8000/pages/pages/home

使用laravel的助手,而不是:

@section('content') 

<nav class="" id="menu"> 
    <ul class="nav nav-tabs" id="sub_menu"> 
     <li class="active"><a href="{{url()->to("pages/home")}}">Home</a></li> 
     <li><a href="{{url()->to("pages/school")}}">Create School</a></li> 
     <li><a href="{{url()->to("pages/user")}}">Create User</a></li> 
    </ul> 
</nav> <div id="page_loader"></div> 
@endsection 

這種方式Laravel照顧你的事情。