[英]codeigniter form_dropdown, set option value without an array
I want to fetch a table which has 2 columns: id and name, and I want column id as value for each option, and column name as option name 我想获取一个包含2列的表:ID和名称,并且我希望将列ID作为每个选项的值,并将列名称作为选项名称
This is my controller 这是我的控制器
//populate provinsi $this->load->model('Provinsi'); $provinsi = $this->Provinsi->get(); $this->load->view('admin/pages/product_form', array( 'provinces' => $provinsi, ));
And in my view 在我看来
<?php $options_provinsi = array('select_one' => 'Select one'); foreach ($provinces as $provinsi) { $options_provinsi[] = array( $provinsi->id => $provinsi->nama, ); } $extra = 'id="provinsi" class="form-control" onChange="loadLocation('provinsi','kota');"'; echo form_dropdown('provinsi', $options_provinsi, 'select_one', $extra); ?>
How to set option value without using an array? 如何在不使用数组的情况下设置选项值?
Put This : 把这个:
$extra_string = null;
foreach($extra as $key => $value) {
$extra_string .= " {$key}='{$value}'";
}
And change last line to be: 并将最后一行更改为:
echo form_dropdown('provinsi', $options_provinsi, 'select_one', $extra_string);
As you can see checking codeigniter docs you will find out that extra param should be string not an array. 正如您看到的检查codeigniter文档一样,您会发现额外的参数应该是字符串而不是数组。
replace your foreach loop 替换你的foreach循环
foreach ($provinces as $provinsi) {
$options_provinsi[$provinsi->id] = $provinsi->nama;
}
and in view 并鉴于
$extra = null;
echo form_dropdown('provinsi', $options_provinsi, 'select_one', $extra);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.