codeigniter中的select标签的set_select

时间:2015-02-02 07:46:27

标签: php codeigniter

如何为select标签设置值,就像我尝试使用文本字段

时一样
<input type="input" name="name" value="<?php echo set_value('name') ?>"/>

它的工作,但当我尝试选择标签

<SELECT class="form-control" name="user" style="width:200px;">
    <option value="">--Select--</option>
    <?php
        foreach ($result as $row):
        echo "<option value='" . $row['id'] . "' >" . $row['employee_name'];
    ?>
    <?php endforeach ?>
</SELECT>

它不起作用,当验证运行再次显示时 - 选择 - 选项

4 个答案:

答案 0 :(得分:5)

试试这个 - &gt;使用set_select()

<select id="user" name="user" style="width: 230px; height: 40px;" >
<option value="" selected>--Select--</option>
<?php foreach ($result as $row) { ?>
<option value="<?php echo $row['id'] ; ?>" <?php echo set_select('user', $row['id'], False); ?> ><?php echo $row['employee_name'] ; ?> </option> 
<?php } ?>
</select>

答案 1 :(得分:2)

最好的方法是使用form_dropdown方法来使用它们,因为你已经在循环中创建选项并在控制器中创建选项数组并将其传递给视图,如

$options = array('--Select--');

foreach ($result as $row){
     $options[$row['id']] = $row['employee_name'];
}

echo form_dropdown('user',$options,set_select('user','default_value'));

如果没有来自下拉列表的任何选择值,则将使用默认值

答案 2 :(得分:1)

对于Codeigniter下拉列表,您应使用set_select()而不是set_value()功能。您可以使用

<select name="myselect">
<option value="one" <?php echo set_select('myselect', 'one', TRUE); ?> >One</option>
<option value="two" <?php echo set_select('myselect', 'two'); ?> >Two</option>
<option value="three" <?php echo set_select('myselect', 'three'); ?> >Three</option>
</select> 

答案 3 :(得分:0)

这可能对你有帮助。

<SELECT class="form-control" name="user" style="width:200px;">
    <option value="">--Select--</option>
    <?php
        foreach ($result as $row):
        echo "<option value='".$row['id']."' set_select('user', $row['id']);.">". $row['employee_name'];
    ?>
    <?php endforeach ?>
</SELECT>