如何将css类添加到特定的symfony2表单选项中?

Dav*_*ndy 9 symfony-forms symfony

我可以用Javascript做到这一点,但我想知道我是否可以将css类添加到特定的symfony2表单选项(不是选择字段本身,而是个别选项).

例如,我想将不同的CSS样式应用于'select'中的各个'option'标签.我只能找到一种方法来为标签添加一个类.

提前致谢.

gre*_*emo 11

我想你可以做到:

{{  form_widget(form.name, { 'attr' : { 'class' : 'myClass' } })  }}
Run Code Online (Sandbox Code Playgroud)

...作为解释在这里,没有创建自己的表单样式.

  • 这会将标签添加到选择中,也可能添加到选项中,但它不会让您将类应用于各个选项. (6认同)

Cri*_*act 4

您可以覆盖表单中特定小部件的布局,这意味着您可以覆盖选择呈现的方式并放入自定义代码以检查选项的值并在那里输出自定义类。

您需要将自定义布局应用于表单,如下所示

{% form_theme form 'form_theme.html.twig' %}
Run Code Online (Sandbox Code Playgroud)

然后在布局文件中,您需要覆盖该特定表单的特定字段(当然,除非您想直接编辑 choice_widget,在这种情况下,所有使用 choice 的字段都将具有该功能)。

为此,您必须复制小部件,即 choice_widget,然后命名它 [_formName_fieldName_widget]

因此,如果您的表单名称是 events 并且您的字段名称是 requireTickets,那么它就是_events_requireTickets_widget