Forms Symfony2:阻止radio小部件呈现标签
我正在尝试使用symfony2中的Twig来定制表单布局。我的目标是呈现一个无线电输入,看起来像这样Forms Symfony2:阻止radio小部件呈现标签,forms,radio-button,symfony,twig,Forms,Radio Button,Symfony,Twig,我正在尝试使用symfony2中的Twig来定制表单布局。我的目标是呈现一个无线电输入,看起来像这样 <label class=" required">Label name</label> <span class="form-radio"> <input type="radio" name="album_has_subalbums_1" /> Yes </span> <span class="form-radio">
<label class=" required">Label name</label>
<span class="form-radio">
<input type="radio" name="album_has_subalbums_1" /> Yes
</span>
<span class="form-radio">
<input type="radio" name="album_has_subalbums_0" /> No
</span>
但是,这将呈现以下标记:
<label class=" required">Label name</label>
<span class="form-radio">
<input type="radio" id="album_has_subalbums_1" name="album[has_subalbums]" required="required" value="1">
</span>
<label for="album_has_subalbums_1" class=" required">Yes</label>
<span class="form-radio">
<input type="radio" id="album_has_subalbums_0" name="album[has_subalbums]" required="required" value="0">
</span>
<label for="album_has_subalbums_0" class=" required">No</label>
标签名称
对
不
基本上,对于每个radio输入元素,它都会创建一个标签来标识其值是“是”还是“否”。我正在使用一个预先存在的设计,因此无法轻松调整html标记
如何防止无线电输入生成选择文本作为标签?我知道它会在内部调用字段标签
块,但正如您所看到的那样,我的radio\u小部件
没有引用它,因此我对如何防止这种行为有点迷茫
编辑:
说清楚一点,我想要和我的第一个例子一样的结构。。。我省略了名称和值属性等,但显然只是出于演示目的。您需要覆盖的不是
radio\u widget
块,而是choice\u widget
块:
{% block choice_widget %}
{% spaceless %}
{% if expanded %}
<div {{ block('widget_container_attributes') }}>
{% for child in form %}
{{ form_widget(child) }}
{{ child.get('label') | trans }} {# <- this is what you need #}
{# leave the rest untouched #}
{%block choice\u widget%}
{%spaceless%}
{%如果展开%}
{表格%中的子项为%1}
{{form_widget(child)}
{{child.get('label')|trans}{{{code>child.get('label')
对我不起作用,而child.vars.label
对我起作用。
{% block choice_widget %}
{% spaceless %}
{% if expanded %}
<div {{ block('widget_container_attributes') }}>
{% for child in form %}
{{ form_widget(child) }}
{{ child.get('label') | trans }} {# <- this is what you need #}
{# leave the rest untouched #}