Symfony-必需标签上的星号,ChoiceType字段上的错误

时间:2019-11-20 10:12:11

标签: css symfony asterisk required

在我的项目Symfony 4中,我想在必须填写字段的标签旁边放置星号。

根据doc',有几种方法可以做到这一点:https://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字段时,星号不会出现在主标签上,而是出现在所有可能的选择上。

enter image description here

使用此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>

这是我的formType:

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)}}

因此,该错误仅在单选按钮上

有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

您在标签上设置了css属性,并且可以正常工作。您想要收音机的是传奇。您必须调整CSS选择器。 广播组和选择标签是否共享一个类属性?