在laravel集体

时间:2018-02-05 21:39:24

标签: php forms laravel builder

我使用Laravel集体表单构建器来构建表单。我使用了这样的选择:

<div class="form-group">
            {!! Form::label('module', 'Modul'); !!}
            {!! Form::select('module_id', [$modules], $data->module_id) !!}
        </div>

由于未知原因,标签出现在我的代码中。我不想在那里,但我真的找不到如何删除它的简单方法。谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

查看软件包和测试的源代码,我们可以看到optgroup包含,如果传递的数组是多维的,you can see that within this test

查看您提供的代码,我们可以看到您正在创建一个包含$modules的新数组:

Form::select('module_id', [$modules], $data->module_id)

这意味着如果$modules 已经一个数组,那么您将创建一个多维数组。这就是select()方法正在接收的内容:

[
 [
   "a",
   "b",
   "c",
 ],

没有键存在,因此数组以数字方式键入,从0开始,因此optgroup label值为0。如果要在select中使用单个级别的选项,则应该传递单级数组,例如:

[
 "a",
 "b",
 "c",
]

您可以通过不将数组嵌套到另一个数组中来解决此问题,[$modules]变为$modules

<div class="form-group">
    {!! Form::label('module', 'Modul'); !!}
    {!! Form::select('module_id', $modules, $data->module_id) !!}
</div>