加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 覆盖symfony无线电小部件

发布时间:2020-12-13 21:46:02 所属栏目:PHP教程 来源:网络整理
导读:默认单选小组件创建以下结构: label.../labeldiv id="..."div class="clearfix prettyradio labelright blue"input type="radio" id="..._0" name="..." value="..." style="display: none;"a href="#" class=""/a.../div 我找到了radio_widget块,但它本身
默认单选小组件创建以下结构:

<label>...</label>
<div id="...">
<div class="clearfix prettyradio labelright  blue">
<input type="radio" id="..._0" name="..." value="..." style="display: none;">
<a href="#" class=""></a>
...
</div>

我找到了radio_widget块,但它本身只包含一个输入.所以我只能在那里定制这个部分:

<input type="radio" id="..._0" name="..." value="1" style="display: none;">

但我无法理解如何改变整个无线电选择领域的结构?

另外,有人知道,为什么symfony在输入中添加display:none?

谢谢.

解决方法

如果你使用 Radio Field Type,你可以通过调用form_widget(form.yourField)来自定义radio_widget块的输入部分,它显示的是,

{% block radio_widget %}
{% spaceless %}
    <input type="radio" {{ block('widget_attributes') }}{% if value is defined %} value="{{ value }}"{% endif %}{% if checked %} checked="checked"{% endif %} />
{% endspaceless %}
{% endblock radio_widget %}

但是,如果您使用Choice Field Type来显示无线电字段(expanded => true和multiple => false).然后,您必须覆盖choice_widget块,该块调用每个子元素由全局div包围的radio_widget块

你是怎么得到“display:none”的?因为在默认块中没有这样的样式.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读