atxlin 发表于 2010-3-24 11:02:29

加载多个视图的时候数据多显示一次?

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');后多显示了一次数据?

jeongee 发表于 2010-3-24 11:54:09

啊?因为你的cate_update那个页面让它显示了呗,那个$data数组对cate_update视图也是可用的
你发完整代码

atxlin 发表于 2010-3-24 13:28:17

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'];?>&nbsp; &nbsp;&nbsp; &nbsp;
<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();?>

huboo82 发表于 2010-3-24 20:54:02

控制器里把$data传给一个主view,然后在view里可以加载其他的view块,$data共享

曜日晨阳 发表于 2010-3-24 21:19:29

$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]
查看完整版本: 加载多个视图的时候数据多显示一次?