You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Laravel中为下拉选择框设置旧输入选中项

Laravel 下拉选择框保留提交前选中值的实现方法

要让Laravel表单提交后下拉框自动选中用户之前选择的选项,核心是利用框架自带的old()助手函数——它能获取表单提交后的旧输入值,在验证失败返回表单时自动填充选中状态。

直接修改你的下拉框代码即可:

<select class="form-select inp" name="die_categories_id" required>
    @foreach($DieManagementCategories as $category)
        <option value="{{ $category->id }}" {{ old('die_categories_id') == $category->id ? 'selected' : '' }}>
            {{ $category->die_number }}
        </option>
    @endforeach
</select>

关键说明:

  • 把循环变量名改成$category,避免和集合变量$DieManagementCategories重名,代码更清晰规范。
  • old('die_categories_id')会读取上次提交时die_categories_id字段的值,当该值和当前选项的id匹配时,自动给option加上selected属性,实现选中状态。
  • 如果是编辑场景(比如从数据库读取已有值),可以给old()传第二个参数作为默认值:
    <option value="{{ $category->id }}" {{ old('die_categories_id', $yourModel->die_categories_id) == $category->id ? 'selected' : '' }}>
        {{ $category->die_number }}
    </option>
    
    这样既会在表单验证失败时保留用户修改的选择,也会在初始加载编辑页面时自动选中数据库里的已有值。

内容的提问来源于stack exchange,提问作者Laxman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 17:20:27