【问题标题】:Laravel HTML Dropdown does not remember selected valuesLaravel HTML Dropdown 不记得选择的值
【发布时间】:2017-07-11 23:32:02
【问题描述】:

Laravel 生成下拉菜单的情况很奇怪。

我正在尝试使用 Semantic-UI 生成多个下拉菜单,当表单未经验证且不记住所选值时出现问题。

代码很简单:

$selected_currencies = ($brand->currency != '') ? explode(', ', $brand->currency) : [];
{!! Form::select('currency[]', $currencies, $selected_currencies, ['class' => 'ui fluid dropdown', 'multiple']) !!}

我尝试使用“null”和“''”代替“[]”,但 id 不保存所选值。

对我来说最奇怪的是,我有两个使用相似形式的网站。在 localhost 上,两种形式都不能按我的意愿工作。每个网站都放置在不同的主机上,其中一个正在显示应保存的值。

所以我想知道这是否可能是 PHP 版本或任何其他设置?

【问题讨论】:

  • 在将它传递给表单之前尝试 {{ $selected_currencies }} 检查它包含的内容,即使它是否返回一个数组
  • 第一行可以使用显式转换进行简化:{!! Form::select('currency[]', $currencies, (array) $selected_currencies, /* ...* /) !!}
  • @Exprator 它返回一个空数组,但如果该数组通常为空,表单将变旧('currency')并显示输入的值。但它不显示任何东西:(

标签: php html laravel-5


【解决方案1】:

问题来自 Laravelcollection 插件,请参见此处: https://github.com/LaravelCollective/html/commit/3dcf2185a1a329e6c19bb1eaa89de9cf91572145

不幸的是,我需要这样使用它:

return in_array($value, $selected) ? 'selected' : null;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-07
    • 1970-01-01
    • 1970-01-01
    • 2018-02-19
    相关资源
    最近更新 更多