2015-06-13 45 views
0

我想获取其具有2列的表:ID和名称, ,我想色谱柱内径为每个选项值,和列名作为选项名笨form_dropdown,设置选项值

这是我的控制器

//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); 
 
?>
此代码满足我的需求,而是因为我使用数组,下拉变成了这个样子:

dropdown_error

如何设置选项值,而无需使用一个数组?

回答

0

取代你的foreach循环

foreach ($provinces as $provinsi) { 
     $options_provinsi[$provinsi->id] = $provinsi->nama; 
} 

,并鉴于

$extra = null; 
echo form_dropdown('provinsi', $options_provinsi, 'select_one', $extra); 
+0

感谢小伙们^^,看到你的回答哈哈哈后,我觉得真的很愚蠢。应该学到更多 – stacheldraht27

0

把这个:

$extra_string = null; 
foreach($extra as $key => $value) { 
    $extra_string .= " {$key}='{$value}'"; 
} 

,并更改最后一行是:

echo form_dropdown('provinsi', $options_provinsi, 'select_one', $extra_string); 

正如你可以看到检查codeigniter文档,你会发现额外的PARAM应该是字符串不是一个数组。

  • 如果它是一个数组,那么form_dropdown()将产生一个数组键,作为标签。
+0

感谢提醒我有关参数$多余的,但是从options_provinsi $阵列来的问题。 – stacheldraht27

+0

不,你的问题是因为数组类型中的$ extra参数产生了这导致你附加的图片。 –

+0

如果我像上面那样改变我的额外费用,是否与您的示例相同? – stacheldraht27