Symfony 4-无法为formBuilder中的表单字段自定义attr

问题描述 投票:1回答:1

我有一个功能,可以使用以下代码在按钮的各个角落:

<input type="checkbox" class="custom-control-input" id="toggle-border-radius">
<label class="custom-control-label" for="toggle-border-radius">Border radius</label>

将调用此JS脚本:

// toggle border radius
    $("#toggle-border-radius").change(function (e) {
        e.preventDefault();
        $('.page-wrapper').toggleClass("boder-radius-on");
    });

但是这是手动编写的代码,我想使用真实的形式并保持相同的功能。因此,我使用formBuilder创建了这样的表单:

//... other fields
->add('activeBorderRadius', CheckboxType::class, [
                'required' => false,
                'label' => "Bords arrondis",
                'label_attr' => [
                    'class' => 'custom-control-label',
                    'for' => 'toggle-border-radius'
                ],
                'attr' => [
                    'class' => 'custom-control-input',
                    'id' => 'toggle-border-radius'
                ],
            ])

但是当我加载页面时,JS脚本不起作用。当我检查源代码时,我发现了这一点:

<input type="checkbox" id="parametres_sidebarOptions_activeBorderRadius" name="parametres[sidebarOptions][activeBorderRadius]" class="custom-control-input form-check-input" value="1">

<label class="custom-control-label form-check-label" for="parametres_sidebarOptions_activeBorderRadius">Bords arrondis</label>

为什么不能拥有我选择的属性?

感谢您的帮助

javascript php symfony builder attr
1个回答
0
投票

您还可以在呈现表单时将参数传递给表单字段

© www.soinside.com 2019 - 2024. All rights reserved.