如何卸载codeigniter视图


How to un-load codeigniter views

在一个相对较重的函数中,我想将其保留在同一个函数中。

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

然而,与以前相同的视图也在显示,只是向下推到新视图下方,尽管我只是简单地称之为一个视图。

有类似$this->unload->view的东西吗?

CodeIgniter中没有unload方法。

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

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

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

无论如何,我完全相信你在这里做错了什么。发布更多关于你正在努力实现的目标和相关代码的描述,以便社区能够帮助你。

无需:这是一个简单的

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

就是这样……或者你希望给出相同的视图,但不同的参数,然后你相对地为post保留数据。。。你可以

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

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

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

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