我想获取一个包含2列的表:id和name, 我希望列id作为每个选项的值,列名作为选项名称
这是我的控制器
//populate provinsi
$this->load->model('Provinsi');
$provinsi = $this->Provinsi->get();
$this->load->view('admin/pages/product_form', array(
'provinces' => $provinsi,
));

在我看来
<?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);
?>
&#13;
如何在不使用数组的情况下设置选项值?
答案 0 :(得分:0)
放这个:
$extra_string = null;
foreach($extra as $key => $value) {
$extra_string .= " {$key}='{$value}'";
}
将最后一行更改为:
echo form_dropdown('provinsi', $options_provinsi, 'select_one', $extra_string);
正如您可以看到检查codeigniter文档,您会发现额外的参数应该是字符串而不是数组。
答案 1 :(得分:0)
替换你的foreach循环
foreach ($provinces as $provinsi) {
$options_provinsi[$provinsi->id] = $provinsi->nama;
}
并在视野中
$extra = null;
echo form_dropdown('provinsi', $options_provinsi, 'select_one', $extra);