如何在codeigniter中回显先前选择的下拉值?

时间:2014-04-03 20:25:35

标签: php jquery codeigniter echo edit

此代码在使用此下拉类别添加新条目方面效果很好。我的问题是,这将Option1设置为默认值,以确保下拉列表没有得到应答。我的问题是,如何回显以前保存的下拉类别值?我应该正确显示它,这样我才能正确编辑功能。

<tr>
    <span style="font-size: 10pt" class="label label-info">Category</span><br/>
<? $options = array
    (
        '1' => 'Option1',
        '2' => 'Option2',
        '3' => 'Option3',
        '4' => 'Option4',
    ); ?>
    <?php echo form_dropdown('category_id', $options, 'Option1');?>
</tr>

我期待着任何帮助。

祝你有愉快的一天! :)

2 个答案:

答案 0 :(得分:0)

编辑:这是有效的(顺便说一句,有很好的类来处理带有codeigniter的表单,你不必为每个字段使用所有这些代码,并以更加灵活的方式管理验证规则等 - 保持视图和控制器非常简单,并将其中的大部分移动到模型中。)

<?php $model = array(
    array('value' => '1', 'display' => 'Option1'),
    array('value' => '2', 'display' => 'Option2'),
    array('value' => '3', 'display' => 'Option3'));
echo '<select name="category_id">';
foreach($model as $i) echo '<option '.($this->input->post('category_id') === $i['value'] ? 'selected="selected"' : '').' value="'.$i['value'].'">'.$i['display'].'</option>';
echo '</select>';
?>

答案 1 :(得分:0)

在你的问题中引用:Edit form echoes previously saved data correctly but does not update the form fields

<?php
foreach($model as $row)
{
if($row="" )
{
$selected_category_id =  '';
$options = array
(
    '1' => 'Option1',
    '2' => 'Option2',
    '3' => 'Option3',
    '4' => 'Option4',
); ?>
<?php echo form_dropdown('category_id', $options, $selected_category_id);?>
}
else
{
$selected_category_id =  '$row->(database column name where vale is stored)';
$options = array
(
    '1' => 'Option1',
    '2' => 'Option2',
    '3' => 'Option3',
    '4' => 'Option4',
); ?>
<?php echo form_dropdown('category_id', $options, $selected_category_id);?>
}
}