0

IN codeigniter コントローラーを繰り返し使用して、ページのすべてのテンプレートをロードしています.... ページをヘッダー、トップナビゲーション、左ナビゲーション、コンテンツとフッターに分割しました。

これが私が現在していることです

public function get_started() {
    if (test_login()) {
        $this->load->view('includes/header');
        $this->load->view('includes/topnav');
        $this->load->view('includes/leftbar');
        $this->load->view('login_nav/get_started');
        $this->load->view('includes/footer');
    } else {
        $this->load->view('errors/needlogin');      
    }
}

ヘッダーフッターとトップナビゲーションを静的に保ち、ajaxを使用して特定のビューをロードできるようにするjquery-ajaxヘルパーまたはプラグインがcodeigniterにありますか?

前もって感謝します..

4

2 に答える 2

0

コンストラクターを使用して、静的ヘッダーを設定できます。

//in your controller

public $data;

function __construct()
{
    $this->data['header'] = 'static_header';
    $this->data['static_footer'] = 'static_footer';
}

function get_started(){
    if (test_login()) {
        $this->data['subview'] = 'login_nav/get_started';
    } else {
        $this->data['subview'] = 'errors/needlogin';
    }
        $this->load->view('template',$this->data);
}

function get_page(){
   $view = $this->load->view('your_dynamic_view','',TRUE);
   print json_encode(array('success' => TRUE, 'view' => $view);
}

// in your template.php
<div id="header"><?php echo $this->load->view('header');?></div>
<div id="subview"><?php echo $this->load->view('subview');?></div>
<div id="footer"><?php echo $this->load->view('footer');?></div>

// in your script - used to load dynamic view on you subview div
<script type="text/javascript">
    $.get('controller/get_page',{},function(data){
        if(data.success){
            $('#subview').html(data.view);
        }
    },'json')
</script>

私のコードに問題がある場合はメッセージを送ってください ハッピーコーディング ---> :D

于 2013-03-04T07:09:36.527 に答える