0

我是一个新手 laravel 用户,并尝试使用教程和文档编写我的代码。当我尝试打开网站时,会出现加载动画,然后菜单和内容会分成页面的任一侧。我只想在单击菜单按钮时更改内容划分。

这些是我的 routes.php:

Route::controller(Controller::detect());
Route::get('articles', array('uses'=>'articles@index'));
Route::get('articles/(:any)', array('as'=>'article','uses'=>'articles@view'));
Route::get('abouts', array('as'=>'abouts','uses'=>'abouts@index'));

这是我的 default.blade.php 菜单部分:

<div id="sidebar-content">
   <ul id="menu">
       <li class="current"><a href="<?php echo URL::to('articles'); ?>">ANASAYFA</a></li>
       <li><a href="<?php echo URL::to('abouts'); ?>">HAKKIMIZDA</a></li>
   </ul>
</div>

这里的链接正确吗?

我的 ajax.js

$(document).ready( function() {
    $("#sidebar-content ul li a").click( function(e){
        e.preventDefault();
        $('#content').load(this.href);
        console.log('This href =='+this.href);
        return false;
    });
});

当我点击链接时,我得到一个加载动画并且内容没有显示。
这是我的文章控制器:

class Articles_Controller extends Base_Controller {
    public $restful = true;
    public $layout = 'layouts.default';

    public function get_index(){
        $this->layout->title = "Anasayfa";
        $this->layout->content = View::make('articles.index')->with('articles',Article::order_by('id')->get());
    }
}

这些是 console.logs :

GET http://localhost/~ytsejam/laravel/public/index.php/abouts  jquery.min.js (line 4)
This href ==http://localhost/~ytsejam/laravel/public/index.php/abouts   ajax.js (line 6)
GET http://localhost/~ytsejam/laravel/public/js/basic.js?_=13446   jquery.min.js (line 4)
GET http://localhost/~ytsejam/laravel/public/index.php/abouts jquery.min.js (line 5)
This href ==http://localhost/~ytsejam/laravel/public/index.php/abouts ajax.js (line 6)
GET http://localhost/~ytsejam/laravel/public/index.php/abouts jquery.min.js (line 5)
This href ==http://localhost/~ytsejam/laravel/public/index.php/abouts jquery.min.js (line 7)

你能帮助我吗?

4

1 回答 1

0

我找不到您的菜单和内容分裂的原因。可能您可以重新阅读您的 Javascript,因为在我看来,拆分问题就在那里。

至于你的链接。如果我阅读文档http://laravel.com/docs/routing,我希望链接是URL::to_route('abouts')and URL::to_route('articles'),因为您使用命名路由。

而且您正在使用刀片引擎(因为您的文件名为default.blade .php)。因此你可以写{{ URL::to_route('abouts') }}而不是<?php echo URL::to_route('abouts'); ?>

希望这对您有帮助,Hendrik Jan

于 2012-08-12T00:39:13.087 回答