我有一个表单构建器表单,其中包含多个国家/地区选择列表。当我将它们呈现在我的表单上时,如下所示:
{{ form_widget(edit_form.countries) }}
它们看起来像这样:
<input type="checkbox" name="..." value="AD" /><label for="...">Andorra</label>
<input type="checkbox" name="..." value="AE" /><label for="...">United Arab Emirates</label>
<input type="checkbox" name="..." value="AF" /><label for="...">Afghanistan</label>
我希望每个选项在浏览器中显示在其自己的行上,而不是全部显示在一行中。如何在选项周围或选项之间注入 html?或者有 CSS 方法可以实现这一点吗?
Thanks.
来自 Symfony 文档
- 表单主题
- 如何自定义表单渲染
- 默认表单 div 布局
你基本上需要做的是超载复选框小部件 block.
{% form_theme form _self %}
{% block checkbox_widget %}
{% spaceless %}
<input type="checkbox" {{ block('widget_attributes') }}{% if value is defined %} value="{{ value }}"{% endif %}{% if checked %} checked="checked"{% endif %} />
{% endspaceless %}
{% endblock checkbox_widget %}
当然,您可以使用 CSS 将您的小部件放在自己的行中(但这不是 Symfony2 问题)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)