我已经为我的表单创建了一个Symfony3表单类,其中包含以下ChoiceType元素:
gcc.exe
这很好用,并将class属性设置为选择值。但我想改为设置id属性。
我试过这个:
->add('deg_certs', ChoiceType::class, array(
'mapped' => false,
'expanded' => true,
'multiple' => true,
'label' => 'Degrees/Certificates received:',
'choices' => array(
'BA/BS' => 'ba_bs',
'AA/AS' => 'aa_as',
'Voc. Cert.' => 'voc_cert',
'Other' => 'other',
),
'choice_attr' => function($val){
return ['class' => $val];
},
))
我期待工作,但没有。
我也试过我的Twig模板:
'choice_attr' => function($val){
return ['id' => $val];
},
但是,这也没有设置id属性。注意:以上是尝试在您不熟悉的情况下设置选项中第3项的ID。
这似乎是Symfony3代码不支持此问题的问题。任何人都可以确认吗?
我想设置id属性的原因是因为在我的Javascript中我想使用{{ form_widget(form.deg_certs[3],
{'attr':{'id':'deg_other',
'onchange':'changeDegCertOther()',
'style':'float:left'}}) }}
而非getElementById
(获取数组)。