如何卸载codeigniter视图

时间:2012-08-23 16:00:10

标签: php codeigniter

在一个相对繁重的功能中,我希望保持相同的功能。

基本上在$_POST函数之前我已加载视图。在功能之后我有不同的看法。

然而,与之前相同的视图也显示出来,只是在新视图下方,即使我只是调用一个视图。

有类似$this->unload->view的内容吗?

3 个答案:

答案 0 :(得分:2)

CodeIgniter中没有unload方法。

如果您想要该功能,您应该考虑重写您的代码,因为它不正确。加载的视图几乎立即传递给输出。您唯一能做的就是将视图返回到某个变量以供以后使用:

$stored_view = $this->load->view('my_view', $data, true);

然后你可以在条件中使用它。

无论如何,我完全相信你在这里做错了什么。发布有关您要实现的内容的更多描述以及相关代码,以便社区可以为您提供帮助。

答案 1 :(得分:0)

不需要:很简单

if($_POST)
    $this->load->view('view1');
else
    $this->load->view('view2');

就是这样.....或者你希望给出相同的视图但是差异参数然后你保持相对的数据...你可以

$data['general'] = 'Main';
if($_POST)
    $data['for post'] = 'something';
$this->load->view('comman_view',$data);

答案 2 :(得分:0)

存储需要检查的$ _POST变量,并将其传递给视图。然后,在检查视图上传递的变量的值之后,可以在渲染视图后使用jQuery从DOM中删除加载的视图。使用此功能的缺点是呈现视图并再次将其删除的冗余过程。

$("#the-id-of-the-added-view").remove();

但是,正如@ sergey-telshevsky所建议的那样,您应该能够更改逻辑,以免一开始就不进行卸载。