codeigniter drop_down中的设置选项



我正在加载我的 dropdown并尝试设置一个选项:

<div class="form-group">
                <label for="areas" class="col-lg-2 control-label">Áreas</label>
                    <div class="col-lg-3">
                        <select class="form-control" id="areasCadastradas" name="areas">
                         <?php 
                            foreach($areas as $row)
                            { 
                              echo '<option  value="'.$row->id.'">'.$row->descricao.'</option>';
                            }
                         ?>
                        </select>
                        <?php echo $record->id_area;
                            echo set_select('areas', $record->id_area); ?>
                  </div>
             </div>

它不起作用...我需要加载下拉列表并设置选项。

编辑:加载它正在工作..但是我无法设置选项

编辑2:

foreach($areas as $row)
{ 
echo '<option  value="'.$row->id.' '.set_select('areas', $record->id, False);.'">'.$row->descricao.'</option>';
}

解决方案:

<select class="form-control" id="comarcasCadastradas" name="comarcas">
                         <?php 
                            foreach($comarcas as $row)
                            { 
                              if ($record->id_comarca == $row->id) {
                                    echo '<option  value="'.$row->id.'" selected>'.$row->nome.'</option>';
                                } else {
                                    echo '<option  value="'.$row->id.'">'.$row->nome.'</option>';
                                }
                            }
                         ?>

我建议使用CI的形式助手

<?php
// All the code in the <?php tags should be in the controller and then vars passed to the view.
// Putting it all in the view here for the sake of a simple answer.
$this->load->helper('form');
$options = []; //empty array to start
foreach($areas as $row)
{
    $options[$row->id] = $row->descricao;
}
$dropdown_data = [
  'name' => 'areas',
  'options' => $options,
  'selected' => $record->id_area,
  'class' => "form-control",
  'id' => "areasCadastradas"
];
?>
<div class="form-group">
    <label for="areas" class="col-lg-2 control-label">Áreas</label>
    <div class="col-lg-3">
        <?php
        echo form_dropdown($dropdown_data);
        ?>
    </div>
</div>

我假设$record->id_area是一个适合您下拉的数组。

此代码可能会帮助您

$options = array();
                        foreach ($areas as $row)
                        {
                             $options[$row->id]=$row->descricao;
                        }
                        echo form_dropdown('areas', $options, $record->id);

,我希望您已经在控制器中加载了form_validation库文件

$this->load->library('form_validation');

最新更新