簡體   English   中英

codeigniter form_dropdown,設置選項值,不帶數組

[英]codeigniter form_dropdown, set option value without an array

我想獲取一個包含2列的表:ID和名稱,並且我希望將列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); ?> 
這段代碼可以滿足我的需求,但是由於我使用數組,因此下拉列表如下所示:

dropdown_error

如何在不使用數組的情況下設置選項值?

把這個:

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

並將最后一行更改為:

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

正如您看到的檢查codeigniter文檔一樣,您會發現額外的參數應該是字符串而不是數組。

  • 如果它是一個數組,則form_dropdown()將產生一個帶有數組鍵作為標簽的。

替換你的foreach循環

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

並鑒於

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM