2017-08-25 40 views
1

需要FormBuilder多个复选框我该如何需要多个复选框用的EntityType场,而不是ChoiceType场Symfony3?其实,我正在使用:使用的EntityType场

use Symfony\Bridge\Doctrine\Form\Type\EntityType; 

->add('typesAdresses' , EntityType::class , array(
    'class' => 'EKUserBundle:TypeAdresse', 
    'required' => true, 
    'expanded' => true, 
    'multiple' => true, 
)); 

这将输出多个复选框,但不是按需要的。

在我的表格中,它必须是必需的。

回答

2

复选框行为是不同的,你可能会使用choice_attr选项周围获得:

$builder 
    ->add('typesAdresses' , EntityType::class , array(
     'class' => TypeAddresse::class, 
     'expanded' => true, 
     'multiple' => true, 
     'choice_attr' => function($val, $key, $index) { 
      return array('required' => true); 
     }, 
    )) 
; 

然而:我想你想达到什么是“至少1个复选框一组复选框中选中” 。这是一个非常不同的问题,在Using the HTML5 “required” attribute for a group of checkboxes? 中有更详细的解释。所以你可能必须用一些JavaScript来解决这个问题,并在FormType中省略必要的属性。

+0

感谢回复我。就像你说的我希望至少有一个复选框被选中。我试图解决它没有JavaScript。 – Sabra