在我的项目Symfony 4中,我想在那些必须填写的标签旁边加上星号。
根据道克'的说法,有几种方法可以做到这一点:wwwhttps://symfony.com/doc/4.0/form/form_customization.html#adding-a-required-asterisk-to-field-labels
但CSS方法更简单。
在我的CSS文件中,我添加了以下代码:
label.required:after {
content: " *";
color: red;
font-weight: bold;
}
它对细节起作用。在窗体中,当我有一个ChoiceType字段时,星号不会出现在主标签上,而是出现在所有可能的选择上。
使用此HTML呈现:
<div class="col-2">
<fieldset class="form-group">
<legend class="col-form-label required">Ajouter/Supprimer</legend>
<div id="role_choix">
<div class="form-check">
<input type="radio" id="role_choix_0" name="role[choix]" required="required" class="form-check-input" value="ajouter">
<label class="form-check-label required" for="role_choix_0">Ajouter</label>
</div>
<div class="form-check">
<input type="radio" id="role_choix_1" name="role[choix]" required="required" class="form-check-input" value="supprimer">
<label class="form-check-label required" for="role_choix_1">Supprimer</label>
</div>
</div>
</fieldset>
</div>
这是我的表单类型:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('choix', ChoiceType::class, [
'label' => 'Ajouter/Supprimer',
'choices' => [
'Ajouter' => 'ajouter',
'Supprimer' => 'supprimer',
],
'multiple' => false,
'expanded' => true,
])
->add('role', ChoiceType::class, [
'label' => "Ajouter un rôle à cet utilisateur",
'choices' => [
'Admin' => 'admin',
'Direction' => 'direction',
'RH' => 'rh',
]
])
;
}
还有我的小枝:
{{form_start(form)}}
<div class="row items-align-center">
<div class="col-md-2">{{form_row(form.choix)}}</div>
<div class="col-md-4">{{form_row(form.role)}}</div>
</div>
<button type="submit" class="btn btn-primary">Enregistrer</button>
{{form_end(form)}}
所以bug只在单选按钮上
有人能帮帮我吗?
2条答案
按热度按时间1dkrff031#
我知道这是一个很老的问题,但我发现这个解决方案对我很有效:
vmjh9lq92#
你在标签上设置了css属性,这就起作用了。你想让radio把它放在图例上。你必须修改css选择器。radio组和select标签共享一个class属性吗?