作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我想将数据加载到我的 View 中,尤其是我的 Controller items
中的一个变量。但是在我的 Controller 中,我想在将它推送到 View 之前动态设置 items
是什么。
我尝试了下面的代码,但它不起作用。 View 加载时出现错误“Undefined variable: items”。
public function index(){
if ($this->input->post('filter'))
{
$search = $this->input->post('filter');
$test=$this->upload_model->test_r();
$data['items']=$test;
}
else
{
$data['items']=$one;
}
$data=array ('other'=>$othrs, 'links'=>$links);
$this->load->view('gallery_view', $data);
}
我希望它如何工作是 $data['items']
默认设置为 $one
,当页面加载时,但在页面我有一个选择框,所以我希望如果更改了选择框,则 $data['items']
将设置为其他内容。但这仅适用于使用选择框,否则,它应该使用 $data[items]=$one
进行查找。 $data 数组还有其他需要加载到 View 中的值,例如“others”和“links”。
我 View 中的选择框
<?php echo form_open(base_url().'page') ?>
<form class="form-inline" role="form">
<select class="form-control" id="filter" name="filter" onchange="this.form.submit()">
<option value="1">1</option>
<option>2</option>
<option>3</option>
</select>
</form>
<?php echo form_close(); ?>
上面的索引 Controller 函数是针对我的 Controller “Pages”的。选择框中的值被很好地捕获,当我对传递的值进行回显时,它会正确显示。
问题是根据是否使用选择框来更改 View 数据“项目”。
我该如何解决这个问题?
最佳答案
在if条件之前执行这一行
$data=array ('other'=>$othrs, 'links'=>$links,'items'=>"");
在 Controller 中删除下面的行。
$data=array ('other'=>$othrs, 'links'=>$links);
因为你在设置$data["items"]
后重新赋值$data
关于php - 在 Codeigniter View 中加载数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21315211/
我是一名优秀的程序员,十分优秀!