加载多个视图的时候数据多显示一次?
function index(){$data['content'] = $this->mcate->get_all_cate();
$this->load->view('cate/cate_show',$data);
$this->load->view('cate/cate_update');
}
为什么加了 $this->load->view('cate/cate_update');后多显示了一次数据? 啊?因为你的cate_update那个页面让它显示了呗,那个$data数组对cate_update视图也是可用的
你发完整代码 function index(){
$data['content'] = $this->mcate->get_all_cate();
$this->load->view('cate/cate_show',$data);
$this->load->view('cate/cate_update',$data);
}
<?php foreach ($content as $res):?>
<li class="lis"><?php echo $res['cate_name'];?>
<a href="<?php echo site_url('cate/getcatebyid/'.$res['id']);?>">修改</a>
<a href="<?php echo site_url('cate/delete/'.$res['id']);?>">删除</a>
</li>
<?php endforeach;?>
</div>
<?php echo form_open('cate/add');?>
<li class="lis">上级分类:
<select name="parentid">
<option value="0">无(作为一级分类)</option>
<?php foreach ($content as $res):?>
<option value="<?php echo $res['id'];?>"><?php echo $res['cate_name'];?></option>
<?php endforeach;?>
</select>
</li>
<li class="lis">分类名:<input type="text" name="cate_name" /></li>
<li class="lis"><input type="submit" value="提交" /></li>
<?php echo form_close();?> 控制器里把$data传给一个主view,然后在view里可以加载其他的view块,$data共享 $this->load->view('cate/cate_show',$data);
cate/cate_show.php内可以包含:
$this->load->view('cate/header');
$this->load->view('cate/cate_update');
$this->load->view('cate/footer');
控制器内的$date只要传值给你的“主”视图,那么主视图内包含的其他视图同样会被赋予$date,
也可以理解为cate/cate_show视图加载所有的分视图后再被$date传入数据处理。
页:
[1]