symfony - 在 ChoiceType 中插入“占位符”的正确位置是什么?
问题描述
我正在使用带有 Bootstrap 4 的 Symfony 5.2,并且我正在设计一个包含 ChoiceType 字段的表单。我需要一个占位符,例如“选择一个选项”。我尝试了不同的选择,但没有一个有效。我的文件 ComisionNewFormType.php:
->add('turno', ChoiceType::class, [
'label' => 'Turno:',
'attr' => [
'class' => 'form-control',
'placeholder' => '-Seleccione un turno',
],
'choices' => [
'Mañana' => 'Mañana' ,
'Tarde' => 'Tarde',
'Noche' => 'Noche' ,
'Desconocido' =>'Desconocido' ,
],
])
我的树枝模板是:
<div class="col">
Intensidad:<font color="red"> {{ form_errors(form.turno)}}</font>
{{ form_widget(form.turno, {'attr': {'placeholder': '-Seleccione un turno'}}) }}
</div>
然而,结果看起来像这样,没有“占位符”:
Firefox 中的源代码如下所示:
<div class="col-sm-2">
Turno:
<select id="comision_new_form_turno" name="comision_new_form[turno]" class="form-control form-control">
<option value="Mañana">Mañana</option>
<option value="Tarde">Tarde</option>
<option value="Noche">Noche</option>
<option value="Desconocido">Desconocido</option>
</select>
</div>
占位符不出现。
我应该如何使占位符在上述字段的表单中可见?
解决方案
正如文档所说,您必须使用ChoiceType
选项中的占位符(https://symfony.com/doc/current/reference/forms/types/choice.html#placeholder)
->add('turno', ChoiceType::class, [
'label' => 'Turno:',
'placeholder' => '-Seleccione un turno',
'attr' => [
'class' => 'form-control',
],
'choices' => [
'Mañana' => 'Mañana' ,
'Tarde' => 'Tarde',
'Noche' => 'Noche' ,
'Desconocido' =>'Desconocido' ,
],
])
推荐阅读
- excel - 使用 vba 对字体颜色进行排序
- jquery - 如何使用 jQuery 验证图像内容?
- c# - 如何初始化和发送 toast 通知
- r - rfe.default 中的错误 ... x 和 y 中的样本数应该相同
- python - 我可以将“用户名”中的字母更改为大写字母,并且仍然使用相同的用户名进行注册。我该如何解决?
- mysql - 为什么我收到错误代码 1452 无法添加或更新子行
- sql - 子查询用作表达式时,子查询返回的值不允许超过 1 个
- python - 根据包含在每条记录中提供的列名的列从 pandas 数据框中获取数据
- ios - 包装的 CATextLayer 中的行间距值是多少?
- log4j2 - log4j2 环境变量替换不适用于文件名属性