使用我的 formBuilder,我正在构建一个选择字段:
$options = [
'attr' => array('class' => 'form-control'),
'data' => '2',
'mapped' => false,
'label' => $label,
'data_class' => null,
];
if ($type == 'choice') {
$options['attr'] = array('class' => 'form-control select2');
$options['class'] = 'App\Entity\Options';
$options['choice_label'] = 'name';
$options['query_builder'] = function (EntityRepository $er) use ($fieldId) {
return $er->createQueryBuilder('f')
->leftJoin('f.fields', 'fi')
->where(":id MEMBER OF f.fields")
->setParameter(':id', $fieldId);
};
$options['data'] = '2';
$formBuilder->add($id, ChoiceType::class, $options);
}
它运作良好,使用我的所有选项创建了一个选择字段。问题是,我希望默认选择的选项是2.
这是行不通的。始终选择第一个选项。所以默认选择的选项是 always green。但我需要它blue。这是选择框,即创建:
<select class="form-control select2 select2-hidden-accessible" tabindex="-1" aria-hidden="true">
<option value="1">green</option>
<option value="2">blue</option>
<option value="3">red</option>
</select>
慕村225694