【问题标题】:Codeigniter 3, form_dropdown, default and repopulating not working as expectedCodeigniter 3,form_dropdown,默认和重新填充未按预期工作
【发布时间】:2020-05-13 10:12:48
【问题描述】:

我想要下拉菜单,所以默认为登录用户。如果更改了用户,并且验证出现错误,则下拉列表应重新填充所选内容。

这是我的代码:

<?php
$default_pic = $this->ion_auth->user()->row()->id;

$options = array();
foreach ($users_datas as $users_data) {
    $options2[$users_data['id']] =  $users_data['email'];
}
?>

<div class="form-group  col-lg-3 col-md-3">
<?php
    echo form_label('PIC', 'prospects_user_id');
    echo form_dropdown('prospects_user_id', $options2, set_value('email'));
?>
</div>

form_dropdown 会填充用户 ID (id) 和电子邮件地址 (email) 的列表。

如果我使用下面的代码,我希望下拉列表中选择的任何内容都会在验证错误时重新填充该选择,但它只会转到 lsit 中的第一个选择。

echo form_dropdown('prospects_user_id', $options2, set_value('email'));

如果我使用下面的代码,我希望我默认登录用户(由$default_pic = $this-&gt;ion_auth-&gt;user()-&gt;row()-&gt;id; 获得)。它在第一次加载时按预期工作,但如果我在下拉列表中选择另一个用户并且出现验证错误,它会返回到默认用户。

如何在初始加载时将默认用户设置为登录用户(同样,由$default_pic = $this-&gt;ion_auth-&gt;user()-&gt;row()-&gt;id; 获得),并且每当表单上出现验证错误时,下拉菜单会重新填充上次选择的内容?

【问题讨论】:

    标签: php codeigniter


    【解决方案1】:

    这是正确的答案并且有效:

    echo form_dropdown('prospects_user_id', $options2, set_value('prospects_user_id', $default_pic ), $atribute_id);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-30
      • 2016-07-01
      • 2014-08-20
      • 2017-08-20
      • 1970-01-01
      • 2019-09-01
      • 2021-07-22
      相关资源
      最近更新 更多