使用Codeigniter或模板或部分视图的动态视图

时间:2016-06-07 08:18:56

标签: php html ajax codeigniter

如何在不重新加载整个主视图的情况下加载导航菜单的视图?模板或部分视图之类的东西。是否需要使用ajax执行此操作?怎么会这样?我不太了解ajax。可以看一个例子吗?

我在控制器中加载我的主视图,如下所示:

$data = [
            'header_view'               => 'main/header',
            'nav_view'                  => 'main/nav',
            'section_view'              => 'main/main_view',
            'article_view'              => 'main/article',
            'aside_view'                => 'main/aside',
            'footer_view'               => 'main/footer',
        ];

$this->load->view('home_view', $data);

然后我从主页视图中加载viev:

<section>  
            <?=$this->load->view($section_view);?>
</section>
...

在导航视图中,我想将链接放到不同的部分而不重新加载导航视图,因为我将有一个树结构和其他东西。

enter image description here

2 个答案:

答案 0 :(得分:1)

为什么不使用AngularJS?您可以使用ui-routes或ng-routes创建单页应用程序。你可以对你的控制器方法进行ajax调用,该方法将渲染你的视图,你可以在其中显示该视图。

答案 1 :(得分:0)

修改

要进行单页iframe站点,您需要设置一个控制器来返回没有任何其他内容的页面

Controller -> loadpage($name)

然后路由它,但是你喜欢

然后,创建一个id为

的iframe
<iframe name="maincontent"></iframe>
显然,请添加您需要的样式/属性。

在您的链接上添加目标

<a href="/url/page" target="maincontent">Link 1</a>